1995-09-03 08:22:54 -07:00
|
|
|
OVERVIEW:
|
|
|
|
|
2011-04-26 05:16:50 -07:00
|
|
|
OCaml is an implementation of the ML language, based on the Caml Light
|
|
|
|
dialect extended with a complete class-based object system and a
|
|
|
|
powerful module system in the style of Standard ML.
|
|
|
|
|
|
|
|
OCaml comprises two compilers. One generates bytecode which is then
|
|
|
|
interpreted by a C program. This compiler runs quickly, generates
|
|
|
|
compact code with moderate memory requirements, and is portable to
|
|
|
|
essentially any 32 or 64 bit Unix platform. Performance of generated
|
|
|
|
programs is quite good for a bytecoded implementation. This compiler
|
|
|
|
can be used either as a standalone, batch-oriented compiler that
|
|
|
|
produces standalone programs, or as an interactive, toplevel-based
|
|
|
|
system.
|
1995-09-03 08:22:54 -07:00
|
|
|
|
|
|
|
The other compiler generates high-performance native code for a number
|
|
|
|
of processors. Compilation takes longer and generates bigger code, but
|
2001-02-06 07:24:00 -08:00
|
|
|
the generated programs deliver excellent performance, while retaining
|
|
|
|
the moderate memory requirements of the bytecode compiler. The
|
|
|
|
native-code compiler currently runs on the following platforms:
|
1995-09-03 08:22:54 -07:00
|
|
|
|
2012-02-10 08:15:24 -08:00
|
|
|
Tier 1 (actively used and maintained by the core OCaml team):
|
2004-07-13 05:19:15 -07:00
|
|
|
|
2011-07-20 02:17:07 -07:00
|
|
|
AMD64 (Opteron) Linux, MacOS X, MS Windows
|
2006-09-20 04:14:37 -07:00
|
|
|
IA32 (Pentium) Linux, FreeBSD, MacOS X, MS Windows
|
2011-12-17 03:12:50 -08:00
|
|
|
PowerPC Linux, MacOS X
|
|
|
|
ARM Linux
|
2004-07-13 05:19:15 -07:00
|
|
|
|
2006-09-20 04:14:37 -07:00
|
|
|
Tier 2 (maintained when possible, with help from users):
|
2004-07-13 05:19:15 -07:00
|
|
|
|
|
|
|
AMD64 FreeBSD, OpenBSD
|
|
|
|
IA32 (Pentium) NetBSD, OpenBSD, Solaris 9
|
2011-12-17 03:12:50 -08:00
|
|
|
PowerPC NetBSD
|
|
|
|
SPARC Solaris, Linux, NetBSD
|
1995-09-03 08:22:54 -07:00
|
|
|
|
|
|
|
Other operating systems for the processors above have not been tested,
|
1996-01-11 06:14:40 -08:00
|
|
|
but the compiler may work under other operating systems with little work.
|
1995-09-03 08:22:54 -07:00
|
|
|
|
2011-04-26 05:16:50 -07:00
|
|
|
Before the introduction of objects, OCaml was known as Caml Special
|
|
|
|
Light. OCaml is almost upwards compatible with Caml Special Light,
|
|
|
|
except for a few additional reserved keywords that have forced some
|
|
|
|
renaming of standard library functions.
|
1995-09-03 08:22:54 -07:00
|
|
|
|
|
|
|
CONTENTS:
|
|
|
|
|
1997-11-10 10:20:48 -08:00
|
|
|
Changes what's new with each release
|
1995-09-03 08:22:54 -07:00
|
|
|
INSTALL instructions for installation
|
|
|
|
LICENSE license and copyright notice
|
|
|
|
Makefile main Makefile
|
|
|
|
README this file
|
2012-02-10 08:15:24 -08:00
|
|
|
README.win32 infos on the MS Windows ports of OCaml
|
1995-09-03 08:22:54 -07:00
|
|
|
asmcomp/ native-code compiler and linker
|
|
|
|
asmrun/ native-code runtime library
|
|
|
|
boot/ bootstrap compiler
|
|
|
|
bytecomp/ bytecode compiler and linker
|
|
|
|
byterun/ bytecode interpreter and runtime system
|
|
|
|
config/ autoconfiguration stuff
|
1997-02-23 08:29:36 -08:00
|
|
|
debugger/ source-level replay debugger
|
1995-09-03 08:22:54 -07:00
|
|
|
driver/ driver code for the compilers
|
2012-02-10 08:15:24 -08:00
|
|
|
emacs/ OCaml editing mode and debugger interface for GNU Emacs
|
1995-09-03 08:22:54 -07:00
|
|
|
lex/ lexer generator
|
1999-11-23 01:41:31 -08:00
|
|
|
maccaml/ the Macintosh GUI
|
2003-07-22 00:51:43 -07:00
|
|
|
ocamldoc/ documentation generator
|
1997-11-10 10:20:48 -08:00
|
|
|
otherlibs/ several external libraries
|
1995-09-03 08:22:54 -07:00
|
|
|
parsing/ syntax analysis
|
|
|
|
stdlib/ standard library
|
|
|
|
tools/ various utilities
|
|
|
|
toplevel/ interactive system
|
|
|
|
typing/ typechecking
|
|
|
|
utils/ utility libraries
|
|
|
|
yacc/ parser generator
|
|
|
|
|
|
|
|
COPYRIGHT:
|
|
|
|
|
1997-02-25 06:39:51 -08:00
|
|
|
All files marked "Copyright INRIA" in this distribution are copyright
|
2008-12-03 10:09:09 -08:00
|
|
|
1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
|
2011-12-17 03:12:50 -08:00
|
|
|
2007, 2008, 2009, 2010, 2011, 2012 Institut National de Recherche en
|
|
|
|
Informatique et en Automatique (INRIA) and distributed under the
|
|
|
|
conditions stated in file LICENSE.
|
1995-09-03 08:22:54 -07:00
|
|
|
|
|
|
|
INSTALLATION:
|
|
|
|
|
2010-01-22 04:48:24 -08:00
|
|
|
See the file INSTALL for installation instructions on Unix, Linux and
|
2003-06-24 02:50:02 -07:00
|
|
|
MacOS X machines. For MS Windows, see README.win32.
|
1995-09-03 08:22:54 -07:00
|
|
|
|
|
|
|
DOCUMENTATION:
|
|
|
|
|
2011-04-26 05:16:50 -07:00
|
|
|
The OCaml manual is distributed in HTML, PDF, Postscript, DVI, and
|
|
|
|
Emacs Info files. It is available on the World Wide Web, at
|
1995-09-03 08:22:54 -07:00
|
|
|
|
2000-04-21 04:54:35 -07:00
|
|
|
http://caml.inria.fr/
|
1995-09-03 08:22:54 -07:00
|
|
|
|
|
|
|
AVAILABILITY:
|
|
|
|
|
2011-04-26 05:16:50 -07:00
|
|
|
The complete OCaml distribution can be accessed at
|
2001-02-06 07:24:00 -08:00
|
|
|
|
|
|
|
http://caml.inria.fr/
|
|
|
|
|
1995-09-03 08:22:54 -07:00
|
|
|
KEEPING IN TOUCH WITH THE CAML COMMUNITY:
|
|
|
|
|
2012-02-10 08:15:24 -08:00
|
|
|
There exists a mailing list of users of the OCaml implementations
|
1995-09-03 08:22:54 -07:00
|
|
|
developed at INRIA. The purpose of this list is to share
|
|
|
|
experience, exchange ideas (and even code), and report on applications
|
2012-02-10 08:15:24 -08:00
|
|
|
of the OCaml language. Messages can be written in English or in
|
2011-12-17 03:12:50 -08:00
|
|
|
French. The list has more than 1000 subscribers.
|
1995-09-03 08:22:54 -07:00
|
|
|
|
|
|
|
Messages to the list should be sent to:
|
|
|
|
|
1996-09-19 05:57:28 -07:00
|
|
|
caml-list@inria.fr
|
1995-09-03 08:22:54 -07:00
|
|
|
|
2006-09-20 04:14:37 -07:00
|
|
|
You can subscribe to this list via the Web interface at
|
1995-09-03 08:22:54 -07:00
|
|
|
|
2015-09-29 04:57:51 -07:00
|
|
|
https://sympa.inria.fr/sympa/subscribe/caml-list
|
2001-03-30 04:21:32 -08:00
|
|
|
|
2011-12-17 03:12:50 -08:00
|
|
|
Archives of the list are available on the Web site above.
|
1995-09-03 08:22:54 -07:00
|
|
|
|
1996-01-04 04:48:44 -08:00
|
|
|
The Usenet news groups comp.lang.ml and comp.lang.functional
|
|
|
|
also contains discussions about the ML family of programming languages,
|
2012-02-10 08:15:24 -08:00
|
|
|
including OCaml.
|
1995-09-03 08:22:54 -07:00
|
|
|
|
|
|
|
BUG REPORTS AND USER FEEDBACK:
|
|
|
|
|
2006-09-20 04:14:37 -07:00
|
|
|
Please report bugs using the Web interface to the bug-tracking system
|
2001-03-30 04:21:32 -08:00
|
|
|
at http://caml.inria.fr/bin/caml-bugs
|
1995-09-03 08:22:54 -07:00
|
|
|
|
|
|
|
To be effective, bug reports should include a complete program
|
|
|
|
(preferably small) that exhibits the unexpected behavior, and the
|
|
|
|
configuration you are using (machine type, etc).
|
|
|
|
|
2001-02-05 00:46:09 -08:00
|
|
|
You can also contact the implementors directly at caml@inria.fr.
|