This is our pleasure to announce The Objective Label Trilogy, version 2.00 Objective Label / LablTk / LablBrowser Objective Label is an extension of Objective Caml with labeled and optional arguments, polymorphic variants and polymorphic methods. LablTk uses these extensions to provide an almost type safe interface to Tcl/Tk, such that you can write application in a style very close to Tcl. LablBrowser is a programming environment, allowing one to browse code, both source and compiled, and navigate through it on the basis of types and compiled interfaces. It also includes an editor, and a language shell. The combination of these three elements is a system * easy to program, thanks to the libraries and tools * producing more readable programs, thanks to labels * allowing more precise and lighter typing, thanks to variants * supporting a smoother form of functional object-oriented programming, thanks to polymorphic methods These advantages are not limited to functional programming hackers. Our experience is that it provides a particularly good environment for students and beginners, who enjoy the added comfort of the GUI, and the improved readability of their own programs. There were at least 3 recent threads in the caml-list related with Objective Label's functionality: * automatic subtyping in method arguments: this is possible through polymorphic methods. Similarly the stack2 example in Objective Caml reference manual is typable in Objective Label. * extensible datatypes: polymorphic variants allow that, and much more. * documentation browsing: not only LablBrowser allows you to browse the interfaces of all your compiled modules, but it can also bring you to their implentations or textual interfaces, pinpoint on the defintion needed. Textual interfaces are the standard place to document functions in Objective Caml. The port is complete: all the functionality and tools of Objective Caml are available. It is source compatible with O'Caml: any program or library written in O'Caml can be compiled without modification, and you may even add labels to interfaces to your taste. This release should work on any Unix/X windows based system, producing native code on architectures supported by Objective Caml. Changes since version 1.07 are: * full support of the new object system. * added polymorphic typing for methods (see the manual). * full support of optional arguments in class definitions. * changes in the internal representation of polymorphic variants, and bug fixes for variants. * label st: was systematically changed to acc:, some labels name: were removed, and some other replaced by file:. * updated ocaml-mode for the new object syntax. You may get the O'Labl trilogy (and more information) at http://wwwfun.kurims.kyoto-u.ac.jp/soft/olabl/ ftp://ftp.kurims.kyoto-u.ac.jp/pub/lang/olabl/olabl-2.00.tar.gz http://pauillac.inria.fr/olabl/ (soon available) Comments to Jacques Garrigue Jun Furuse (LablTk)