4.03.0
版本发布时间: 2018-06-12 18:33:46
ocaml/ocaml最新发布版本:5.2.0(2024-05-13 20:27:08)
- A new intermediate representation, called Flambda, was added to the
native-code compiler, along with several new optimizations over the
Flambda representation, such as aggressive function inlining. (The
Flambda optimizer needs to be activated at configuration time by
./configure -flambda
.) - New language feature: inline records as arguments to datatype constructors. This makes it possible to name the arguments of a constructor, and use convenient record notation to access them, without the cost of declaring a separate record type for the arguments.
- The
@unboxed
and@untagged
attributes are supported on external function declarations to pass parameters and results to C stub functions in a more efficient way. Other attributes honored by the compiler include@tailcall
and@inline
. - Improvements to the garbage collector, resulting in better GC latency (shorter GC pauses).
- Support for ephemerons, a more general form of GC finalization of data structures.
- The runtime system is now compiled at higher levels of C optimization, resulting in significant speedups for the bytecode interpreter.
- New native code generators supporting the PowerPC 64-bit architecture (in big and little-endian modes) and the IBM zSystem architecture.
- The whole code base (compilers, libraries and tools) is now licensed under the LGPL v2.1 with static linking exception.
- The ocamlbuild compilation manager was split off and lives as an independent project.
See also: detailed list of changes.