From: Xavier Leroy <xleroy@pauillac.inria.fr>
Message-Id: <199703111328.OAA20795@pauillac.inria.fr>
Subject: Objective Caml 1.04 released
To: caml-list@pauillac.inria.fr, comp-lang-ml@cs.cmu.edu
Date: Tue, 11 Mar 1997 14:28:47 +0100 (MET)
Release 1.04 of Objective Caml is now available.
The main novelty in this release is the port of the Caml Light replay
debugger. Also, the native-code compiler now works on Silicon
Graphics, weak pointers are supported, and the foreign interface
was enriched to make calling Caml from C easier.
A detailed list of changes follows at the end of this message.
The sources and Windows binaries are available by anonymous FTP
at ftp://ftp.inria.fr/lang/caml-light. Diffs are not available due to
bootstrapping difficulties.
See http://pauillac.inria.fr/ocaml/ for documentation and general info
about Objective Caml.
- Xavier Leroy
Objective Caml 1.04:
--------------------
* Replay debugger ported from Caml Light; added debugger support in
compiler (option -g) and runtime system. Debugger is alpha-quality
and needs testing.
* Parsing:
- Support for "# linenum" directives.
- At toplevel, allow several phrases without intermediate ";;".
* Typing:
- Allow constraints on datatype parameters, e.g.
type 'a foo = ... constraint 'a = 'b * 'c.
- Fixed bug in signature matching in presence of free type variables '_a.
- Extensive cleanup of internals of type inference.
* Native-code compilation:
- Inlining of small functions at point of call (fairly conservative).
- MIPS code generator ported to SGI IRIX 6.
- Better code generated for large integer constants.
- Check for urgent GC when allocating large objects in major heap.
- PowerPC port: better scheduling, reduced TOC consumption.
- HPPA port: handle long conditional branches gracefully,
several span-dependent bugs fixed.
* Standard library:
- More floating-point functions (all ANSI C float functions now available).
- Hashtbl: added functorial interface (allow providing own equality
and hash functions); rehash when resizing, avoid memory leak on
Hashtbl.remove.
- Added Char.uppercase, Char.lowercase, String.uppercase, String.lowercase,
String.capitalize, String.uncapitalize.
- New module Weak for manipulating weak pointers.
- New module Callback for registering closures and exceptions to be
used from C.
* Foreign interface:
- Better support for callbacks (C calling Caml), exception raising
from C, and main() in C. Added function to remove a global root.
- Option -output-obj to package Caml code as a C library.
* Thread library: fixed bug in timed_read and timed_write operations;
Lexing.from_function and Lexing.from_channel now reentrant.
* Unix interface: renamed EACCESS to EACCES (the POSIX name); added setsid;
fixed bug in inet_addr_of_string for 64-bit platforms.
* Ocamlyacc: default error function no longer prevents error recovery.
* Ocamllex: fixed reentrancy problem w.r.t. exceptions during refill;
fixed output problem (\r\r\n) under Win32.
* Macintosh port:
- The makefiles are provided for compiling and installing O'Caml on
a Macintosh with MPW 3.4.1.
- An application with the toplevel in a window is forthcoming.
* Windows NT/95 port: updated toplevel GUI to that of Caml Light 0.73.
* Emacs editing mode and debugger interface included in distribution.
This archive was generated by hypermail 2b29 : Sun Jan 02 2000 - 11:58:09 MET