* Objective Caml 1.04 released
@ 1997-03-11 13:28 Xavier Leroy
1997-03-14 8:40 ` Frank Christoph
0 siblings, 1 reply; 3+ messages in thread
From: Xavier Leroy @ 1997-03-11 13:28 UTC (permalink / raw)
To: caml-list, comp-lang-ml
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.
^ permalink raw reply [flat|nested] 3+ messages in thread
* Objective Caml 1.04 released
1997-03-11 13:28 Objective Caml 1.04 released Xavier Leroy
@ 1997-03-14 8:40 ` Frank Christoph
1997-03-17 9:13 ` Weak pointers Frank Christoph
0 siblings, 1 reply; 3+ messages in thread
From: Frank Christoph @ 1997-03-14 8:40 UTC (permalink / raw)
To: caml-list
>>>>> "Xavier" == Xavier Leroy <Xavier.Leroy@inria.fr> writes:
> 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.
What is a "weak pointer"? Is it described in the manual?
--
Frank Christoph Next Solution Co. Tel: 0424-98-1811
christo@nextsolution.co.jp Fax: 0424-98-1500
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Weak pointers
1997-03-14 8:40 ` Frank Christoph
@ 1997-03-17 9:13 ` Frank Christoph
0 siblings, 0 replies; 3+ messages in thread
From: Frank Christoph @ 1997-03-17 9:13 UTC (permalink / raw)
To: caml-list
(I wrote:)
>>>>> "Xavier" == Xavier Leroy <Xavier.Leroy@inria.fr> writes:
>> 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.
> What is a "weak pointer"? Is it described in the manual?
My apologies. I just discovered module Weak in the standard library.
However, I still don't understand the concept. The manual says:
"A weak pointer is an object that the garbage collector may erase at any
time. A weak pointer is said to be full if it points to an object, empty if
the object was erased by the GC."
Does this mean that even a full weak pointer can be erased? What does "at
any time" mean --- even if the pointer is still accessible from the root set,
its contents can be erased? Is this intended to contrast with a usual
reference, which must always be initialized? Are weak pointers intended to
model C pointers?
Could someone post an example of their use?
--
Frank Christoph Next Solution Co. Tel: 0424-98-1811
christo@nextsolution.co.jp Fax: 0424-98-1500
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~1997-03-17 18:02 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1997-03-11 13:28 Objective Caml 1.04 released Xavier Leroy
1997-03-14 8:40 ` Frank Christoph
1997-03-17 9:13 ` Weak pointers Frank Christoph
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox