* 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