caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
* 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;
as well as URLs for NNTP newsgroup(s).