caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Jacques Garrigue <Jacques.Garrigue@inria.fr>
To: caml-list@inria.fr
Subject: Objective Caml 2.99 released
Date: Fri, 17 Dec 1999 18:50:21 +0100	[thread overview]
Message-ID: <19991217185021D.garrigue@pauillac.inria.fr> (raw)

We are happy to announce

         Objective Caml version 2.99 (The Merger)

This release is the result of merging Objective Label features inside
Objective Caml. It contains very few bug fixes and many new
features. As the version number suggests, this is a beta release.
This does not mean that we are aware of any bug, but if you are
satisfied with 2.04 you may prefer to wait for 3.00.

New features:

  * labeled arguments
    They help you document your code.
    You may choose to use the compatible syntax (by default), which
    allows labels but require them to be present in applications, or
    the stricter olabl-like syntax.

  * optional arguments
    They are available in both modes, and allow to define multiple
    call patterns for functions.

  * polymorphic variants
    They allow the reuse of the same variant tag in multiple
    contexts/types and provide a refined type checking.


New tools and libraries:

  * ocaml2to3: a script converting ocaml 2 files to the new lexing rules.
    This only means adding spaces around colons, and converting
    question marks `?' to double ones `??'.

  * ocamlbrowser: an "integrated programming environment". This contains
    a library browser, a type-checking editor, and an Objective Caml shell.

  * labltk: another version of the ocamltk Tcl/Tk interface. It allows
    for a more natural syntax, using optional arguments.

OCamlBrowser and LablTk are not available on windows and Mac for this
release.


This merger does not mean that Objective Caml became Objective Label.
Only part of Objective Label features were included in this release.
Others, like polymorphic methods, may follow later, but nothing is
fixed yet.

Sources, documentation and binaries for Linux/RedHat and Windows are
available from:

        http://caml.inria.fr/ocaml/distrib299.html
        ftp://ftp.inria.fr/lang/caml-light/

For general info on Objective Caml, see http://caml.inria.fr/ocaml/

Please direct queries to caml-light@inria.fr, bug reports to
caml-bugs@caml.inria.fr, and general discussions to the mailing-list
caml-list@inria.fr or the comp.lang.ml newsgroup.

- Jacques Garrigue et Xavier Leroy, for the Objective Caml team.

Appendix:
---------
List of changes for Objective Label users

  * polymorphic methods and covariant subtyping of constructors are
    not available.

  * you must use the "-modern -w s" flags to have the compiler and
    toplevel behave more like Objective Label.

  * syntax of optional arguments with default value changed. One writes
    ?(:arg = default) or ?(arg:x = default) in place of
    ?:arg [< default >] or ?arg:x [< default >]
    Also you can now write (:arg : typ) to annotate a labeled argument
    with a type expression.

  * semantics of optional arguments changed. They are only discarded
    when a non-labeled argument appearing after them in the function type
    is applied. This means that any function have to rewritten to
    have a non-labeled argument in last position.

  * LablTk changed quite a bit. Outside of the above optional
    arguments problem, some other functions were homogeneized.




             reply	other threads:[~1999-12-17 22:00 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1999-12-17 17:50 Jacques Garrigue [this message]
1999-12-17 22:28 ` skaller
1999-12-23 18:09 Damien Doligez
1999-12-24  3:24 ` skaller

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=19991217185021D.garrigue@pauillac.inria.fr \
    --to=jacques.garrigue@inria.fr \
    --cc=caml-list@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;
as well as URLs for NNTP newsgroup(s).