diff options
author | jaapb <jaapb> | 2014-10-09 19:08:28 +0000 |
---|---|---|
committer | jaapb <jaapb> | 2014-10-09 19:08:28 +0000 |
commit | 7f269ce9f1f16aa8a39bb78e5342418a43db4e30 (patch) | |
tree | 6f5b02526ac6485976a0fa7b0ce5d3e5e5176c28 /lang/ocaml/PLIST.opt | |
parent | 5b7a2a0ad2256708da65ed6059a94e6452acefa2 (diff) | |
download | pkgsrc-7f269ce9f1f16aa8a39bb78e5342418a43db4e30.tar.gz |
Update to ocaml 4.02.0. Main changes (apart from ocamldoc and bugfixes, see
also upstream changelog):
Language features:
- Attributes and extension nodes
- Generative functors
- Module aliases
* Alternative syntax for string literals {id|...|id} (can break comments)
- Separation between read-only strings (type string) and read-write byte
sequences (type bytes). Activated by command-line option -safe-string.
Build system for the OCaml distribution:
- Use -bin-annot when building.
- Use GNU make instead of portable makefiles.
- Updated build instructions for 32-bit Mac OS X on Intel hardware.
Shedding weight:
* Removed Camlp4 from the distribution, now available as third-party software.
* Removed Labltk from the distribution, now available as a third-party library.
Type system:
* Keep typing of pattern cases independent in principal mode
- Allow opening a first-class module or applying a generative functor
in the body of a generative functor. Allow it also in the body of
an applicative functor if no types are created
* Module aliases are now typed in a specific way, which remembers their
identity. In particular this changes the signature inferred by
"module type of"
- Slight change in the criterion to distinguish private
abbreviations and private row types: create a private abbreviation for
closed objects and fixed polymorphic variants.
* Compare first class module types structurally rather than
nominally. Value subtyping allows module subtyping as long as the internal
representation is unchanged.
Compilers:
- More aggressive constant propagation, including float and
int32/int64/nativeint arithmetic. Constant propagation for floats
can be turned off with option -no-float-const-prop, for codes that
change FP rounding modes at run-time.
- New back-end optimization pass: common subexpression elimination (CSE).
(Reuses results of previous computations instead of recomputing them.)
- New back-end optimization pass: dead code elimination.
(Removes arithmetic and load instructions whose results are unused.)
- Optimization of sequences of string patterns
- Experimental native code generator for AArch64 (ARM 64 bits)
- Optimization of integer division and modulus by constant divisors
- Add "-open" command line flag for opening a single module before typing
* "-o" now sets module name to the output file name up to the first "."
(it also applies when "-o" is not given, i.e. the module name is then
the input file name up to the first ".")
* better sharing of structured constants
- new flag to keep locations in cmi files
- issue warning 3 when referring to a value marked with
the [@@ocaml.deprecated] attribute
- a new format implementation based on GADTs
* Constant exception constructors no longer allocate
- avoid unnecessary boxing in let
- Better compilation of optional arguments with default values
- ocamlopt -opaque option for incremental native compilation
Toplevel interactive system:
- New "#show_*" directives
Runtime system:
- New configure option "-no-naked-pointers" to improve performance by
avoiding page table tests during block darkening and the marking phase
of the major GC. In this mode, all out-of-heap pointers must point at
things that look like OCaml values: in particular they must have a valid
header. The colour of said headers should be black.
- Fixed bug in native code version of [caml_raise_with_string] that could
potentially lead to heap corruption.
- Blocks initialized by [CAMLlocal*] and [caml_alloc] are now filled with
[Val_unit] rather than zero.
- Fixed a major performance problem on large heaps (~1GB) by making heap
increments proportional to heap size by default
- Structural equality treats exception specifically
- efficient comparison/indexing of exceptions
- avoid using unsafe C library functions (strcpy, strcat, sprintf)
- An ISO C99-compliant C compiler and standard library is now assumed.
(Plus special exceptions for MSVC.) In particular, emulation code for
64-bit integer arithmetic was removed, the C compiler must support a
64-bit integer type.
Standard library:
* Add new modules Bytes and BytesLabels for mutable byte sequences.
- add List.sort_uniq and Set.of_list
- a faster version of "raise" which does not maintain the backtrace
- support "Unix.kill pid Sys.sigkill" under Windows
- speed improvement for Buffer
- efficient creation of uninitialized float arrays
- Improve documentation regarding finalisers and multithreading
- Trigger warning 3 for all values marked as deprecated in the documentation.
Diffstat (limited to 'lang/ocaml/PLIST.opt')
-rw-r--r-- | lang/ocaml/PLIST.opt | 82 |
1 files changed, 6 insertions, 76 deletions
diff --git a/lang/ocaml/PLIST.opt b/lang/ocaml/PLIST.opt index 1adefb13194..64a5286f6a8 100644 --- a/lang/ocaml/PLIST.opt +++ b/lang/ocaml/PLIST.opt @@ -1,10 +1,4 @@ -@comment $NetBSD: PLIST.opt,v 1.21 2014/05/13 10:15:05 jaapb Exp $ -bin/camlp4o.opt -bin/camlp4of.opt -bin/camlp4oof.opt -bin/camlp4orf.opt -bin/camlp4r.opt -bin/camlp4rf.opt +@comment $NetBSD: PLIST.opt,v 1.22 2014/10/09 19:08:28 jaapb Exp $ bin/ocamlbuild.native bin/ocamlc.opt bin/ocamldep.opt @@ -23,78 +17,13 @@ lib/ocaml/bigarray.a lib/ocaml/bigarray.cmx lib/ocaml/bigarray.cmxa lib/ocaml/buffer.cmx +lib/ocaml/bytes.cmx +lib/ocaml/bytesLabels.cmx lib/ocaml/callback.cmx +lib/ocaml/camlinternalFormat.cmx lib/ocaml/camlinternalLazy.cmx lib/ocaml/camlinternalMod.cmx lib/ocaml/camlinternalOO.cmx -lib/ocaml/camlp4/Camlp4Bin.cmx -lib/ocaml/camlp4/Camlp4Bin.o -lib/ocaml/camlp4/Camlp4Filters/Camlp4AstLifter.cmx -lib/ocaml/camlp4/Camlp4Filters/Camlp4AstLifter.o -lib/ocaml/camlp4/Camlp4Filters/Camlp4ExceptionTracer.cmx -lib/ocaml/camlp4/Camlp4Filters/Camlp4ExceptionTracer.o -lib/ocaml/camlp4/Camlp4Filters/Camlp4FoldGenerator.cmx -lib/ocaml/camlp4/Camlp4Filters/Camlp4FoldGenerator.o -lib/ocaml/camlp4/Camlp4Filters/Camlp4LocationStripper.cmx -lib/ocaml/camlp4/Camlp4Filters/Camlp4LocationStripper.o -lib/ocaml/camlp4/Camlp4Filters/Camlp4MapGenerator.cmx -lib/ocaml/camlp4/Camlp4Filters/Camlp4MapGenerator.o -lib/ocaml/camlp4/Camlp4Filters/Camlp4MetaGenerator.cmx -lib/ocaml/camlp4/Camlp4Filters/Camlp4MetaGenerator.o -lib/ocaml/camlp4/Camlp4Filters/Camlp4Profiler.cmx -lib/ocaml/camlp4/Camlp4Filters/Camlp4Profiler.o -lib/ocaml/camlp4/Camlp4Filters/Camlp4TrashRemover.cmx -lib/ocaml/camlp4/Camlp4Filters/Camlp4TrashRemover.o -lib/ocaml/camlp4/Camlp4Parsers/Camlp4AstLoader.cmx -lib/ocaml/camlp4/Camlp4Parsers/Camlp4AstLoader.o -lib/ocaml/camlp4/Camlp4Parsers/Camlp4DebugParser.cmx -lib/ocaml/camlp4/Camlp4Parsers/Camlp4DebugParser.o -lib/ocaml/camlp4/Camlp4Parsers/Camlp4GrammarParser.cmx -lib/ocaml/camlp4/Camlp4Parsers/Camlp4GrammarParser.o -lib/ocaml/camlp4/Camlp4Parsers/Camlp4ListComprehension.cmx -lib/ocaml/camlp4/Camlp4Parsers/Camlp4ListComprehension.o -lib/ocaml/camlp4/Camlp4Parsers/Camlp4MacroParser.cmx -lib/ocaml/camlp4/Camlp4Parsers/Camlp4MacroParser.o -lib/ocaml/camlp4/Camlp4Parsers/Camlp4OCamlOriginalQuotationExpander.cmx -lib/ocaml/camlp4/Camlp4Parsers/Camlp4OCamlOriginalQuotationExpander.o -lib/ocaml/camlp4/Camlp4Parsers/Camlp4OCamlParser.cmx -lib/ocaml/camlp4/Camlp4Parsers/Camlp4OCamlParser.o -lib/ocaml/camlp4/Camlp4Parsers/Camlp4OCamlParserParser.cmx -lib/ocaml/camlp4/Camlp4Parsers/Camlp4OCamlParserParser.o -lib/ocaml/camlp4/Camlp4Parsers/Camlp4OCamlReloadedParser.cmx -lib/ocaml/camlp4/Camlp4Parsers/Camlp4OCamlReloadedParser.o -lib/ocaml/camlp4/Camlp4Parsers/Camlp4OCamlRevisedParser.cmx -lib/ocaml/camlp4/Camlp4Parsers/Camlp4OCamlRevisedParser.o -lib/ocaml/camlp4/Camlp4Parsers/Camlp4OCamlRevisedParserParser.cmx -lib/ocaml/camlp4/Camlp4Parsers/Camlp4OCamlRevisedParserParser.o -lib/ocaml/camlp4/Camlp4Parsers/Camlp4OCamlRevisedQuotationExpander.cmx -lib/ocaml/camlp4/Camlp4Parsers/Camlp4OCamlRevisedQuotationExpander.o -lib/ocaml/camlp4/Camlp4Parsers/Camlp4QuotationCommon.cmx -lib/ocaml/camlp4/Camlp4Parsers/Camlp4QuotationCommon.o -lib/ocaml/camlp4/Camlp4Parsers/Camlp4QuotationExpander.cmx -lib/ocaml/camlp4/Camlp4Parsers/Camlp4QuotationExpander.o -lib/ocaml/camlp4/Camlp4Printers/Camlp4AstDumper.cmx -lib/ocaml/camlp4/Camlp4Printers/Camlp4AstDumper.o -lib/ocaml/camlp4/Camlp4Printers/Camlp4AutoPrinter.cmx -lib/ocaml/camlp4/Camlp4Printers/Camlp4AutoPrinter.o -lib/ocaml/camlp4/Camlp4Printers/Camlp4NullDumper.cmx -lib/ocaml/camlp4/Camlp4Printers/Camlp4NullDumper.o -lib/ocaml/camlp4/Camlp4Printers/Camlp4OCamlAstDumper.cmx -lib/ocaml/camlp4/Camlp4Printers/Camlp4OCamlAstDumper.o -lib/ocaml/camlp4/Camlp4Printers/Camlp4OCamlPrinter.cmx -lib/ocaml/camlp4/Camlp4Printers/Camlp4OCamlPrinter.o -lib/ocaml/camlp4/Camlp4Printers/Camlp4OCamlRevisedPrinter.cmx -lib/ocaml/camlp4/Camlp4Printers/Camlp4OCamlRevisedPrinter.o -lib/ocaml/camlp4/Camlp4Top/Rprint.cmx -lib/ocaml/camlp4/Camlp4Top/Rprint.o -lib/ocaml/camlp4/Camlp4Top/Top.cmx -lib/ocaml/camlp4/Camlp4Top/Top.o -lib/ocaml/camlp4/camlp4fulllib.a -lib/ocaml/camlp4/camlp4fulllib.cmxa -lib/ocaml/camlp4/camlp4lib.a -lib/ocaml/camlp4/camlp4lib.cmxa -lib/ocaml/camlp4/camlp4prof.cmx -lib/ocaml/camlp4/camlp4prof.o lib/ocaml/char.cmx lib/ocaml/complex.cmx lib/ocaml/compiler-libs/arch.cmi @@ -222,8 +151,9 @@ lib/ocaml/ocamlbuild/ocamlbuild.cmx lib/ocaml/ocamlbuild/ocamlbuild.o lib/ocaml/ocamlbuild/ocamlbuild_executor.cmx lib/ocaml/ocamlbuild/ocamlbuild_executor.o +lib/ocaml/ocamlbuild/ocamlbuild_pack.cmx lib/ocaml/ocamlbuild/ocamlbuild_plugin.cmx -lib/ocaml/ocamlbuild/ocamlbuild_plugin.cmx +lib/ocaml/ocamlbuild/ocamlbuild_plugin.o lib/ocaml/ocamlbuild/ocamlbuild_unix_plugin.cmx lib/ocaml/ocamlbuild/ocamlbuild_unix_plugin.o lib/ocaml/ocamlbuild/ocamlbuildlib.a |