From: "Scott J." <jscott@planetinternet.be>
To: "Xavier Leroy" <xavier.leroy@inria.fr>
Cc: "Caml-list" <caml-list@inria.fr>
Subject: Re: [Caml-list] OCaml 3.05 released
Date: Tue, 30 Jul 2002 05:50:14 +0200 [thread overview]
Message-ID: <000f01c2377c$36263060$2097fea9@janxp> (raw)
In-Reply-To: <20020729144527.A30919@pauillac.inria.fr>
What is meant by first first-class polymorphism?
Another question do we really need MSVC 6.0 or is Jacob's Navia's win32 lcc
also a good alternative.
Can Olabl be used with windows?
Regards
Scott
----- Original Message -----
From: "Xavier Leroy" <xavier.leroy@inria.fr>
To: <caml-announce@inria.fr>
Sent: Monday, July 29, 2002 2:45 PM
Subject: [Caml-list] OCaml 3.05 released
> Version 3.05 of the Objective Caml system is now available from
>
> http://caml.inria.fr/ocaml/distrib.html
>
> The main novelty in this release is the addition of first-class
> polymorphism for methods and record fields. Also, the ocamldoc
> documentation generator is now included in the release, and the
> modules Complex and Scanf were added to the standard library. This
> comes in addition to the usual amount of bug fixes, which are
> described in more details below.
>
> For general info on Objective Caml, see http://caml.inria.fr. Bug
> reports go to caml-bugs@inria.fr, messages for the implementors to
> caml@inria.fr, and general discussions to the mailing-list
> caml-list@inria.fr, or the comp.lang.ml or comp.lang.functional
> newsgroups.
>
> Enjoy,
>
> - Xavier Leroy, for the Objective Caml team.
>
>
> Objective Caml 3.05:
> --------------------
>
> Language features:
> - Support for polymorphic methods and record fields.
> - Allows _ separators in integer and float literals, e.g. 1_000_000.
>
> Type-checker:
> - New flag -principal to enforce principality of type inference.
> - Fixed subtle typing bug with higher-order functors.
> - Fixed several complexity problems; changed (again) the behaviour of
> simple coercions.
> - Fixed various bugs with objects and polymorphic variants.
> - Improved some error messages.
>
> Both compilers:
> - Added option "-pack" to assemble several compilation units as one unit
> having the given units as sub-modules.
> - More precise detection of unused sub-patterns in "or" patterns.
> - Warnings for ill-formed \ escapes in string and character literals.
> - Protect against spaces and other special characters in directory names.
> - Added interface consistency check when building a .cma or .cmxa library.
> - Minor reduction in code size for class initialization code.
> - Added option "-nostdlib" to ignore standard library entirely.
>
> Bytecode compiler:
> - Fixed issue with ocamlc.opt and dynamic linking.
>
> Native-code compiler:
> - Added link-time check for multiply-defined module names.
> - Fixed GC bug related to constant constructors of polymorphic variant
types.
> - Fixed compilation bug for top-level "include" statements.
> - PowerPC port: work around limited range for relative branches,
> thus removing assembler failures on large functions.
> - IA64 port: fixed code generation bug for 3-way constructor matching.
>
> Toplevel interactive system:
> - Can load object files given on command line before starting up.
> - ocamlmktop: minimized possibility of name clashes with user-provided
modules.
>
> Run-time system:
> - Minor garbage collector no longer recursive.
> - Better support for lazy data in the garbage collector.
> - Fixed issues with the heap compactor.
> - Fixed issues with finalized Caml values.
> - The type "int64" is now supported on all platforms: we use software
> emulation if the C compiler doesn't support 64-bit integers.
> - Support for float formats that are neither big-endian nor little-endian
> (one known example: the ARM).
> - Fixed bug in callback*_exn functions in the exception-catching case.
> - Work around gcc 2.96 bug on RedHat 7.2 and Mandrake 8.0, 8.1 among
others.
> - Stub DLLs now installed in subdir stublibs/ of standard library dir.
>
> Standard library:
> - Protect against integer overflow in sub-string and sub-array bound
checks.
> - New module Complex implementing arithmetic over complex numbers.
> - New module Scanf implementing format-based scanning a la scanf() in C.
> - Module Arg: added alternate entry point Arg.parse_argv.
> - Modules Char, Int32, Int64, Nativeint, String: added type "t" and
function
> "compare" so that these modules can be used directly with e.g. Set.Make.
> - Module Digest: fixed issue with Digest.file on large files (>= 1Gb);
> added Digest.to_hex.
> - Module Filename: added Filename.open_temp_file to atomically create and
> open the temp file; improved security of Filename.temp_file.
> - Module Genlex: allow _ as first character of an identifier.
> - Module Lazy: more efficient implementation.
> - Module Lexing: improved performances for very large tokens.
> - Module List: faster implementation of sorting functions.
> - Module Printf:
> added %S and %C formats (quoted, escaped strings and characters);
> added kprintf (calls user-specified continuation on formatted string).
> - Module Queue: faster implementation (courtesy of François Pottier).
> - Module Random: added Random.bool.
> - Module Stack: added Stack.is_empty.
> - Module Pervasives:
> added sub-module LargeFile to support files larger than 1Gb
> (file offsets are int64 rather than int);
> opening in "append" mode automatically sets "write" mode;
> files are now opened in close-on-exec mode;
> string_of_float distinguishes its output from a plain integer;
> faster implementation of input_line for long lines.
> - Module Sys:
> added Sys.ocaml_version containing the OCaml version number;
> added Sys.executable_name containing the (exact) path of the
> file being executable;
> Sys.argv.(0) is now unchanged w.r.t. what was provided as 0-th
argument
> by the shell.
> - Module Weak: added weak hash tables.
>
> Other libraries:
> - Bigarray:
> support for bigarrays of complex numbers;
> added functions Genarray.dims,
> {Genarray,Array1,Array2,Array3}.{kind,layout}.
> - Dynlink: fixed bug with loading of mixed-mode Caml/C libraries.
> - LablTK:
> now supports also the CamlTK API (no labels);
> support for Activate and Deactivate events;
> support for virtual events;
> added UTF conversion;
> export the tcl interpreter as caml value, to avoid DLL dependencies.
> - Unix:
> added sub-module LargeFile to support files larger than 1Gb
> (file offsets are int64 rather than int);
> added POSIX opening flags (O_NOCTTY, O_*SYNC);
> use reentrant functions for gethostbyname and gethostbyaddr when
available;
> fixed bug in Unix.close_process and Unix.close_process_full;
> removed some overhead in Unix.select.
>
> Tools:
> - ocamldoc (the documentation generator) is now part of the distribution.
> - Debugger: now supports the option -I +dir.
> - ocamllex: supports the same identifiers as ocamlc; warns for
> bad \ escapes in strings and characters.
> - ocamlbrowser:
> recenter the module boxes when showing a cross-reference;
> include the current directory in the ocaml path.
>
> Windows port:
> - Can now compile with Mingw (the GNU compilers without the Cygwin
> runtime library) in addition to MSVC.
> - Toplevel GUI: wrong filenames were given to #use and #load commands;
> read_line() was buggy for short lines (2 characters or less).
> - OCamlBrowser: now fully functional.
> - Graphics library: fixed several bugs in event handling.
> - Threads library: fixed preemption bug.
> - Unix library: better handling of the underlying differences between
> sockets and regular file descriptors;
> added Unix.lockf and a better Unix.rename (thanks to Tracy Camp).
> - LablTk library: fixed a bug in Fileinput.
> -------------------
> To unsubscribe, mail caml-list-request@inria.fr Archives:
http://caml.inria.fr
> Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ:
http://caml.inria.fr/FAQ/
> Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
>
-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
next prev parent reply other threads:[~2002-07-30 3:50 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-07-29 12:45 Xavier Leroy
2002-07-29 14:36 ` Nicolas Cannasse
2002-07-30 0:46 ` Shawn Wagner
2002-07-30 3:50 ` Scott J. [this message]
2002-07-30 7:34 ` John Prevost
2002-07-30 7:46 ` [Caml-list] Serious typechecking error involving new polymorphism (crash) John Prevost
2002-07-30 7:58 ` Xavier Leroy
2002-07-30 8:22 ` John Prevost
2002-07-30 8:47 ` Xavier Leroy
2002-07-30 8:37 ` Sven LUTHER
2002-07-30 14:11 ` [Caml-list] bug-fix branches Xavier Leroy
2002-07-30 16:15 ` Sven LUTHER
2002-08-01 9:37 ` [Caml-list] 3.05 and future 3.06 binary compatibility ? root
2002-08-01 12:09 ` [Caml-list] " Xavier Leroy
2002-08-01 15:56 ` Sven LUTHER
2002-08-08 8:37 ` Sven LUTHER
2002-08-09 12:25 ` Xavier Leroy
2002-08-09 13:16 ` Sven LUTHER
2002-07-30 7:51 ` [Caml-list] OCaml 3.05 released Dmitry Bely
2002-07-30 15:01 ` Scott J.
2002-07-30 15:11 ` Dmitry Bely
2002-08-02 5:31 ` Jacques Garrigue
2002-08-02 11:15 ` Tim Freeman
2002-07-30 7:48 ` [Caml-list] Record with one non mutable filed Christophe Raffalli
2002-07-30 11:49 ` [Caml-list] OCaml 3.05 released Yaron M. Minsky
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='000f01c2377c$36263060$2097fea9@janxp' \
--to=jscott@planetinternet.be \
--cc=caml-list@inria.fr \
--cc=xavier.leroy@inria.fr \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox