summaryrefslogtreecommitdiff
path: root/lang/ocaml/PLIST.stub
AgeCommit message (Collapse)AuthorFilesLines
2012-10-08Update to version 4.00.1. Renamed patches from two-letter system and addedjaapb1-2/+1
comments. Updated buildlink3.mk to default to a full dependency (more pertinent in most cases; usually the standard library needs to be installed for an ocaml program to run) Changes from 3.12 to 4.00.1 include: OCaml 4.00.1: ------------- Various bug fixes. OCaml 4.00.0: ------------- (Changes that can break existing programs are marked with a "*") - The official name of the language is now OCaml. Language features: - Added Generalized Algebraic Data Types (GADTs) to the language. See chapter "Language extensions" of the reference manual for documentation. - It is now possible to omit type annotations when packing and unpacking first-class modules. The type-checker attempts to infer it from the context. Using the -principal option guarantees forward compatibility. - New (module M) and (module M : S) syntax in patterns, for immediate unpacking of a first-class module. Compilers: - Revised simplification of let-alias (PR#5205, PR#5288) - Better reporting of compiler version mismatch in .cmi files * Warning 28 is now enabled by default. - New option -absname to use absolute paths in error messages - Optimize away compile-time beta-redexes, e.g. (fun x y -> e) a b. - Added option -bin-annot to dump the AST with type annotations. - Added lots of new warnings about unused variables, opens, fields, constructors, etc. * New meaning for warning 7: it is now triggered when a method is overridden with the "method" keyword. Use "method!" to avoid the warning. Native-code compiler: - Optimized handling of partially-applied functions (PR#5287) - Small improvements in code generated for array bounds checks (PR#5345, PR#5360). * New ARM backend (PR#5433): . Supports both Linux/EABI (armel) and Linux/EABI+VFPv3 (armhf). . Added support for the Thumb-2 instruction set with average code size savings of 28%. . Added support for position-independent code, natdynlink, profiling and exception backtraces. - Generation of CFI information, and filename/line number debugging (with -g) annotations, enabling in particular precise stack backtraces with the gdb debugger. Currently supported for x86 32-bits and 64-bits only. (PR#5487) - New tool: ocamloptp, the equivalent of ocamlcp for the native-code compiler. OCamldoc: - PR#5645: ocamldoc doesn't handle module/type substitution in signatures - PR#5544: improve HTML output (less formatting in html code) - PR#5522: allow refering to record fields and variant constructors - fix PR#5419 (error message in french) - fix PR#5535 (no cross ref to class after dump+load) * Use first class modules for custom generators, to be able to load various plugins incrementally adding features to the current generator * PR#5507: Use Location.t structures for locations. - fix: do not keep code when not told to keep code. Standard library: - Added float functions "hypot" and "copysign" (PR#3806, PR#4752, PR#5246) * Arg: options with empty doc strings are no longer included in the usage string (PR#5437) - Array: faster implementations of "blit", "copy", "sub", "append" and "concat" (PR#2395, PR#2787, PR#4591) * Hashtbl: . Statistically-better generic hash function based on Murmur 3 (PR#5225) . Fixed behavior of generic hash function w.r.t. -0.0 and NaN (PR#5222) . Added optional "random" parameter to Hashtbl.create to randomize collision patterns and improve security (PR#5572, CVE-2012-0839) . Added "randomize" function and "R" parameter to OCAMLRUNPARAM to turn randomization on by default (PR#5572, CVE-2012-0839) . Added new functorial interface "MakeSeeded" to support randomization with user-provided seeded hash functions. . Install new header <caml/hash.h> for C code. - Filename: on-demand (lazy) initialization of the PRNG used by "temp_file". - Marshal: marshalling of function values (flag Marshal.Closures) now also works for functions that come from dynamically-loaded modules (PR#5215) - Random: . More random initialization (Random.self_init()), using /dev/urandom when available (e.g. Linux, FreeBSD, MacOS X, Solaris) * Faster implementation of Random.float (changes the generated sequences) - Scanf: new function "unescaped" (PR#3888) - Set and Map: more efficient implementation of "filter" and "partition" - String: new function "map" (PR#3888) Installation procedure: - Compiler internals are now installed in `ocamlc -where`/compiler-libs. The files available there include the .cmi interfaces for all compiler modules, plus the following libraries: ocamlcommon.cma/.cmxa modules common to ocamlc, ocamlopt, ocaml ocamlbytecomp.cma/.cmxa modules for ocamlc and ocaml ocamloptcomp.cma/.cmxa modules specific to ocamlopt camltoplevel.cma modules specific to ocaml (PR#1804, PR#4653, frequently-asked feature). * Some .cmi for toplevel internals that used to be installed in `ocamlc -where` are now to be found in `ocamlc -where`/compiler-libs. Add "-I +compiler-libs" where needed. * toplevellib.cma is no longer installed because subsumed by ocamlcommon.cma ocamlbytecomp.cma ocamltoplevel.cma - Added a configuration option (-with-debug-runtime) to compile and install a debug version of the runtime system, and a compiler option (-runtime-variant) to select the debug runtime. and various bug fixes.
2010-08-19Update to O'Caml 3.12.0, add test target.asau1-2/+2
Some of the highlights in release 3.12 are: * Polymorphic recursion is supported, using explicit type declarations on the recursively-defined identifiers. * First-class modules: module expressions can be embedded as values of the core language, then manipulated like any other first-class value, then projected back to the module level. * New operator to modify a signature a posteriori: S with type t := tau denotes signature S where the t type component is removed and substituted by the type tau elsewhere. * New notations for record expressions and record patterns: { lbl } as shorthand for { lbl = lbl }, and { ...; _ } marks record patterns where some labels were intentionally omitted. * Local open let open ... in ... now supported by popular demand. * Type variables can be bound as type parameters to functions; such types are treated like abstract types within the function body, and like type variables (possibly generalized) outside. * The module type of construct enables to recover the module type of a given module. * Explicit method override using the method! keyword, with associated warnings and errors.
2009-06-14Remove @dirrm entries from PLISTsjoerg1-2/+1
2006-04-04Reorder PLIST components so that directories are removed in the correctjlam1-2/+1
order. Remove "@unexec rmdir" lines made redundant by the reordering. Also, use a more succinct way to match ${OPSYS} + ${MACHINE_ARCH} by just checking ${MACHINE_PLATFORM}.
2005-12-05Fixed pkglint warnings. The warnings are mostly quoting issues, forrillig1-2/+2
example MAKE_ENV+=FOO=${BAR} is changed to MAKE_ENV+=FOO=${BAR:Q}. Some other changes are outlined in http://mail-index.netbsd.org/tech-pkg/2005/12/02/0034.html
2005-02-04- Update from 3.06 to 3.08.2adrianp1-0/+10
- Lots of changes/bugfixes - see Changes for all the details