caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
* OCaml release 3.10.0
@ 2007-05-18  8:32 Xavier Leroy
  2007-05-18  8:41 ` [Caml-list] " Joel Reymont
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Xavier Leroy @ 2007-05-18  8:32 UTC (permalink / raw)
  To: Caml List

I'm happy to announce the release of version 3.10.0 of Objective Caml
(the "ascension day" release).

The main novelties in this release include:

* Instance variables in classes can be declared virtual and
  implemented in subclasses. Syntax is val virtual v : t.

* Printing of stack backtraces on uncaught exceptions, previously
  available only for bytecode-compiled programs, is now supported for
  native-code programs as well. (Supported on Intel/AMD and PPC, in 32
  and 64 bits).

* New ports: MacOS X, PowerPC, 64 bits; Microsoft Windows 64 bits
  (x64) using the Microsoft PSDK toolchain; Microsoft Windows 32 bits
  using the Visual Studio 2005 toolchain.

* The Camlp4 preprocessor was partially reimplemented and offers a
  new, more modular API for syntax extensions. (Users of third-party
  syntax extensions may wish to stay with OCaml 3.09 until these
  extensions are ported to the new API.)

* A new experimental tool, ocamlbuild: a compilation manager that
  automates the building of OCaml applications and libraries.

A more detailed list of changes is appended.

Sources, documentation and Windows binary distributions are available
from the usual place:

     http://caml.inria.fr/ocaml/release.html

MacOS X binaries are not yet available.

Enjoy,

- Xavier Leroy

----------------------------------------------------------------------

Objective Caml 3.10.0:
----------------------

(Changes that can break existing programs are marked with a "*"  )

Language features:
- Added virtual instance variables in classes "val virtual v : t"
* Changed the behaviour of instance variable overriding; the new
  definition replaces the old one, rather than creating a new
  variable.

New tools:
- ocamlbuild: compilation manager for OCaml applications and libraries.
  See draft documentation at http://gallium.inria.fr/~pouillar/
* Camlp4: heavily revised implementation, new API.

New ports:
- MacOS X PowerPC 64 bits.
- MS Windows 64 bits (x64) using the Microsoft PSDK toolchain.
- MS Windows 32 bits using the Visual Studio 2005 toolchain.

Compilers:
- Faster type-checking of functor applications.
- Referencing an interface compiled with -rectypes from a module
    not compiled with -rectypes is now an error.
- Revised the "fragile matching" warning.

Native-code compiler:
- Print a stack backtrace on an uncaught exception.
  (Compile and link with ocamlopt -g; execute with OCAMLRUNPARAM=b.)
  Supported on Intel/AMD in 32 and 64 bits, PPC in 32 and 64 bits.
- Stack overflow detection on MS Windows 32 bits (courtesy O. Andrieu).
- Stack overflow detection on MacOS X PPC and Intel.
- Intel/AMD 64 bits: generate position-independent code by default.
- Fixed bug involving -for-pack and missing .cmx files (PR#4124).
- Fixed bug causing duplication of literals  (PR#4152).

Run-time system:
- C/Caml interface functions take "char const *" arguments
  instead of "char *" when appropriate.
- Faster string comparisons (fast case if strings are ==).

Standard library:
- Refined typing of format strings (type format6).
- Printf, Format: new function ifprintf that consumes its arguments
    and prints nothing (useful to print conditionally).
- Scanf:
    new function format_from_string to convert a string to a format string;
    new %r conversion to accomodate user defined scanners.
- Filename: improved Win32 implementation of Filename.quote.
- List: List.nth now tail-recursive.
- Sys: added Sys.is_directory.  Some functions (e.g. Sys.command) that
    could incorrectly raise Sys_io_blocked now raise Sys_error as intended.

Other libraries:
- Bigarray: mmap_file takes an optional argument specifying
    the start position of the data in the mapped file.
- Dynlink: now defines only two modules, Dynlink and Dynlinkaux (internal),
    reducing risks of name conflicts with user modules.
- Labltk under Win32: now uses Tcl/Tk 8.4 instead of 8.3 by default.
- VM threads: improved performance of I/O operations (less polling).
- Unix: new function Unix.isatty.
- Unix emulation under Win32:
    fixed incorrect error reporting in several functions (PR#4097);
    better handling of channels opened on sockets (PR#4098);
    fixed GC bug in Unix.system (PR#4112).

Documentation generator (OCamldoc):
- correctly handle '?' in value names (PR#4215)
- new option -hide-warnings not to print ocamldoc warnings

Lexer generator (ocamllex): improved error reporting.

License: fixed a typo in the "special exception" to the LGPL.


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [Caml-list] OCaml release 3.10.0
  2007-05-18  8:32 OCaml release 3.10.0 Xavier Leroy
@ 2007-05-18  8:41 ` Joel Reymont
  2007-05-18  9:01   ` CVS tags (was: OCaml release 3.10.0) Xavier Leroy
  2007-05-18  8:53 ` [Caml-list] OCaml release 3.10.0 Hendrik Tews
  2007-05-22 17:16 ` Aleksey Nogin
  2 siblings, 1 reply; 6+ messages in thread
From: Joel Reymont @ 2007-05-18  8:41 UTC (permalink / raw)
  To: OCaml List

Does it mean sources can be retrieved from CVS and just built,  
without needing the 3.10 release tag?

I tried it this morning and fastbuild.sh failed first and worked  
after the 3.10 CVS tag was applied.

On May 18, 2007, at 9:32 AM, Xavier Leroy wrote:

> I'm happy to announce the release of version 3.10.0 of Objective Caml
> (the "ascension day" release).

--
http://wagerlabs.com/






^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [Caml-list] OCaml release 3.10.0
  2007-05-18  8:32 OCaml release 3.10.0 Xavier Leroy
  2007-05-18  8:41 ` [Caml-list] " Joel Reymont
@ 2007-05-18  8:53 ` Hendrik Tews
  2007-05-18  9:02   ` Xavier Leroy
  2007-05-22 17:16 ` Aleksey Nogin
  2 siblings, 1 reply; 6+ messages in thread
From: Hendrik Tews @ 2007-05-18  8:53 UTC (permalink / raw)
  To: caml-list

Xavier Leroy <Xavier.Leroy@inria.fr> writes:

   * The Camlp4 preprocessor was partially reimplemented and offers a
     new, more modular API for syntax extensions. (Users of third-party
     syntax extensions may wish to stay with OCaml 3.09 until these
     extensions are ported to the new API.)

I can't find the Camlp4 documentation, where is it?

Bye,

Hendrik


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: CVS tags (was: OCaml release 3.10.0)
  2007-05-18  8:41 ` [Caml-list] " Joel Reymont
@ 2007-05-18  9:01   ` Xavier Leroy
  0 siblings, 0 replies; 6+ messages in thread
From: Xavier Leroy @ 2007-05-18  9:01 UTC (permalink / raw)
  To: Joel Reymont; +Cc: OCaml List

> Does it mean sources can be retrieved from CVS and just built,  without
> needing the 3.10 release tag?

No.  The CVS trunk is most probably broken, as all recent bug-fixing
was done within the release branch.

A quick guide to tags and branches in the OCaml CVS:

- Releases have tags of the form "ocamlNNNN", e.g. "ocaml3100" for 3.10.0

- Release branches (where bug-fixing takes place) have tags of the form
  "releaseNNN", e.g. "release310" for the 3.10 branch

As of today, if you're tracking the CVS, I recommend using the branch
"release310", or "release309" if you need the old Camlp4.

- Xavier Leroy


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [Caml-list] OCaml release 3.10.0
  2007-05-18  8:53 ` [Caml-list] OCaml release 3.10.0 Hendrik Tews
@ 2007-05-18  9:02   ` Xavier Leroy
  0 siblings, 0 replies; 6+ messages in thread
From: Xavier Leroy @ 2007-05-18  9:02 UTC (permalink / raw)
  To: Hendrik Tews; +Cc: caml-list

> I can't find the Camlp4 documentation, where is it?

In preparation, thank you very much for your patience.

- Xavier Leroy


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [Caml-list] OCaml release 3.10.0
  2007-05-18  8:32 OCaml release 3.10.0 Xavier Leroy
  2007-05-18  8:41 ` [Caml-list] " Joel Reymont
  2007-05-18  8:53 ` [Caml-list] OCaml release 3.10.0 Hendrik Tews
@ 2007-05-22 17:16 ` Aleksey Nogin
  2 siblings, 0 replies; 6+ messages in thread
From: Aleksey Nogin @ 2007-05-22 17:16 UTC (permalink / raw)
  To: Caml List

[-- Attachment #1: Type: text/plain, Size: 964 bytes --]

I have built the source and binary (i386) RPMs of OCaml 3.10.0 for Red 
Hat Enterprise Linux 4 and 5 and for Fedora 2-6. See 
http://rpm.nogin.org/ocaml.html for the listing of the RPMs.

All packages are signed with my GPG key; the public key is available at 
http://rpmbin.nogin.org/GPG-PUBKEY.txt

You can also download the latest RPMs of OCaml and OMake via yum/up2date 
- just point your client to the appropriate URL from the following list:

http://rpmbin.nogin.org/MetaPRL/fedora-6/
http://rpmbin.nogin.org/MetaPRL/fedora-5/
http://rpmbin.nogin.org/MetaPRL/fedora-4/
http://rpmbin.nogin.org/MetaPRL/fedora-3/
http://rpmbin.nogin.org/MetaPRL/fedora-2/

http://rpmbin.nogin.org/MetaPRL/RHEL-5/
http://rpmbin.nogin.org/MetaPRL/RHEL-4/

A sample /etc/yum.repos.d/Nogin.repo for RHEL5 (i386) is attached below.

Aleksey

-- 
Aleksey Nogin, Research Scientist
Advanced Technologies Department, Information & System Sciences Lab
HRL Laboratories, LLC, Malibu, CA

[-- Attachment #2: Nogin.repo --]
[-- Type: text/plain, Size: 382 bytes --]

[Nogin-RHEL5-MP-noarch]
name=Aleksey Nogin's packages for MetaPRL (Red Hat Enterprise Linux 5, noarch)
baseurl=http://rpmbin.nogin.org/MetaPRL/noarch/
enabled=1
gpgcheck=1

[Nogin-RHEL5-MP]
name=Aleksey Nogin's packages for MetaPRL (Red Hat Enterprise Linux 5, i386)
baseurl=http://rpmbin.nogin.org/MetaPRL/RHEL-5/
enabled=1
gpgcheck=1
gpgkey=http://rpmbin.nogin.org/GPG-PUBKEY.txt

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2007-05-22 17:16 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-05-18  8:32 OCaml release 3.10.0 Xavier Leroy
2007-05-18  8:41 ` [Caml-list] " Joel Reymont
2007-05-18  9:01   ` CVS tags (was: OCaml release 3.10.0) Xavier Leroy
2007-05-18  8:53 ` [Caml-list] OCaml release 3.10.0 Hendrik Tews
2007-05-18  9:02   ` Xavier Leroy
2007-05-22 17:16 ` Aleksey Nogin

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).