MAJ pour release 0.6
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1757 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02master
parent
55bb148630
commit
36acaaeeda
77
Changes
77
Changes
|
@ -1,28 +1,89 @@
|
|||
Objective Caml 1.06:
|
||||
--------------------
|
||||
|
||||
* ocamllex: lexers generated by ocamllex can now handle all characters,
|
||||
including '\000'.
|
||||
* Language:
|
||||
- Added two new keywords: "assert" (check assertion) and "lazy"
|
||||
(delay evaluation).
|
||||
- Added "protected" methods (visible only from subclasses, can be hidden
|
||||
in class type declared in module signature).
|
||||
- Allow identifiers to start with "_" (such identifiers are treated
|
||||
as lowercase idents).
|
||||
|
||||
* Memory management:
|
||||
- A heap compacter was implemented, so long-running programs can now
|
||||
* Run-time system:
|
||||
- A heap compactor was implemented, so long-running programs can now
|
||||
fight fragmentation.
|
||||
- The meaning of the "space_overhead" parameter has changed.
|
||||
- The macros Push_roots and Pop_roots are superseded by Begin_roots* and
|
||||
End_roots.
|
||||
- Bytecode executable includes list of primitives used, avoids crashes
|
||||
on version mismatch.
|
||||
- Reduced startup overhead for marshalling, much faster marshalling of
|
||||
small objects.
|
||||
- New exception Stack_overflow distinct from Out_of_memory.
|
||||
- Maximum stack size configurable.
|
||||
- I/O revised for compatibility with compactor and with native threads.
|
||||
- All C code ANSIfied (new-style function declarations, etc).
|
||||
- Threaded code work on all 64-bit processors, not just Alpha/Digital Unix.
|
||||
- Better printing of uncaught exceptions.
|
||||
|
||||
* Language: two new keywords were added: "assert" and "lazy".
|
||||
* Both compilers:
|
||||
- Parsing: better reporting of syntax errors (e.g. shows unmatched opening
|
||||
parenthesis on missing closing parenthesis).
|
||||
- Check consistency between interfaces (.cmi).
|
||||
- Revised rules for determining dependencies between modules.
|
||||
- Options "-verbose" for printing calls to C compiler, "-noassert"
|
||||
for turning assertion checks off.
|
||||
|
||||
* Native-code compiler:
|
||||
- Machine-dependent parts rewritten using inheritance instead of
|
||||
parameterized modules.
|
||||
- GC bug in value letrec fixed.
|
||||
- Port to Linux/Alpha.
|
||||
- Sparc: cleaned up use of %g registers, now compatible with Solaris threads.
|
||||
|
||||
* Top-level interactive system:
|
||||
- Can execute Caml script files given on command line.
|
||||
- Reads commands from ./.ocamlinit on startup.
|
||||
- Now thread-compatible.
|
||||
|
||||
* Standard library:
|
||||
- Printexc: added "to_string".
|
||||
- Filename: "is_absolute" is superseded by "is_implicit" and "is_relative".
|
||||
To adapt old programs, change "is_absolute x" to "not (is_implicit x)"
|
||||
(the new "is_relative" is NOT the opposite of the old "is_absolute").
|
||||
(but the new "is_relative" is NOT the opposite of the old "is_absolute").
|
||||
- Array, Hashtbl, List, Map, Queue, Set, Stack, Stream:
|
||||
the "iter" functions now take as argument a unit-returning function.
|
||||
- New library: Lazy (delayed computations).
|
||||
- New library module: Lazy (delayed computations).
|
||||
- Format: added "printf" interface to the formatter (see the documentation).
|
||||
Revised behaviour of simple boxes: no more than one new line is output
|
||||
when consecutive break hints should lead to multiple line breaks.
|
||||
- New library module: Marshal. Allows marshalling to strings and
|
||||
transmission of closures between identical programs (SPMD parallelism).
|
||||
- Stream: revised implementation, renamed Parse_failure to Failure and
|
||||
Parse_error to Error (don't you love gratuitous changes?).
|
||||
- String: added index, rindex, index_from, rindex_from.
|
||||
- Added Map.map, Set.subset, Printexc.to_string, Array.mapi,
|
||||
Array.iteri, Array.fold_left, Array.fold_right.
|
||||
|
||||
* ocamllex: lexers generated by ocamllex can now handle all characters,
|
||||
including '\000'.
|
||||
|
||||
* ocamlyacc: fixed bug with function closures returned by parser rules.
|
||||
|
||||
* Debugger:
|
||||
- Revised generation of events.
|
||||
- Break on function entrance.
|
||||
- Numerous small fixes.
|
||||
|
||||
* External libraries:
|
||||
- systhreads: can now use POSIX threads; POSIX and Win32 threads are
|
||||
now supported by the native-code compiler.
|
||||
- dbm and graph: work in native code.
|
||||
- num: fixed bug in Nat.nat_of_string.
|
||||
- str: fixed deallocation bug with case folding.
|
||||
- win32unix: use Win32 handles instead of (buggy) VC++ emulation of Unix
|
||||
file handles; added gettimeofday.
|
||||
|
||||
* Emacs editing mode and debugger interface updated to July '97 version.
|
||||
|
||||
Objective Caml 1.05:
|
||||
--------------------
|
||||
|
|
65
LICENSE
65
LICENSE
|
@ -1,12 +1,12 @@
|
|||
LEGAL NOTICE
|
||||
|
||||
Software: Objective Caml, version 1.05 of March 1997,
|
||||
Software: Objective Caml, version 1.06 of November 1997,
|
||||
hereinafter referred to as "the software".
|
||||
|
||||
The software has been designed and produced by Xavier Leroy and Damien
|
||||
Doligez, research workers for the Institut National de Recherche en
|
||||
Informatique et en Automatique (INRIA) - Domaine de Voluceau -
|
||||
Rocquencourt - 78153 Le Chesnay Cedex - France.
|
||||
The software has been designed and produced by Xavier Leroy, Jerome
|
||||
Vouillon, and Damien Doligez, research workers for the Institut
|
||||
National de Recherche en Informatique et en Automatique (INRIA) -
|
||||
Domaine de Voluceau - Rocquencourt - 78153 Le Chesnay Cedex - France.
|
||||
|
||||
INRIA holds all ownership rights to Objective Caml.
|
||||
|
||||
|
@ -23,23 +23,8 @@ the software distributed on the Internet.
|
|||
a- Extent of the rights granted by the INRIA to the user of the software:
|
||||
|
||||
INRIA freely grants the right to use, modify and integrate the
|
||||
software in another software, provided that the modifications are for
|
||||
personal use only. Public distribution of derivative works is not
|
||||
permitted, unless the user obtains the express approval of INRIA.
|
||||
|
||||
INRIA freely grants the right to distribute executable files generated
|
||||
by the Objective Caml compilers (ocamlc and ocamlopt). Binaries of the
|
||||
Objective Caml run-time system (ocamlrun) can also be distributed
|
||||
freely, with the sole condition that the distribution includes the
|
||||
following statement:
|
||||
|
||||
"This software includes the Objective Caml run-time system,
|
||||
which is copyright 1995 INRIA."
|
||||
|
||||
All other files generated by the Objective Caml system, including
|
||||
custom toplevel systems generated by ocamlmktop, are considered as
|
||||
derivative works and cannot be publicly distributed without the
|
||||
express approval of INRIA.
|
||||
software in another software, provided that all derivative works are
|
||||
distributed under the conditions described in point b- below.
|
||||
|
||||
b- Reproduction of the software:
|
||||
|
||||
|
@ -49,11 +34,18 @@ those defined at point a- above. Any copy of the software and/or relevant
|
|||
documentation must comprise reference to the ownership of INRIA and
|
||||
the present file.
|
||||
|
||||
The user undertakes not to carry out any paying distribution of the
|
||||
software. However, he is authorized to bill any person or body for the
|
||||
cost of reproduction of said software. As regards any other type of
|
||||
distribution, the user undertakes to apply to obtain the express
|
||||
approval of INRIA.
|
||||
The user undertakes to distribute the software either as unmodified
|
||||
source files, identical to those originally made public by INRIA, or as
|
||||
executable binaries obtained by compiling the original source files.
|
||||
|
||||
Distribution of derivative works obtained by modifying the sofware or
|
||||
integrating it in another software is allowed only if the distribution
|
||||
consists of the unmodified, original source files for the software,
|
||||
along with difference files (patches) to be applied by the user of the
|
||||
derivative work.
|
||||
|
||||
As regards any other type of distribution, the user undertakes to
|
||||
apply to obtain the express approval of INRIA.
|
||||
|
||||
c- Guarantees:
|
||||
|
||||
|
@ -63,3 +55,22 @@ particular shall not be liable should the software not comply with the
|
|||
requirements of the user, INRIA not being obliged to repair any
|
||||
possible direct or indirect damage.
|
||||
|
||||
d- Distribution of programs compiled with Objective Caml:
|
||||
|
||||
INRIA freely grants the right to distribute executable files generated
|
||||
by the Objective Caml compilers (ocamlc and ocamlopt). Binaries of the
|
||||
Objective Caml run-time system (ocamlrun) can also be distributed
|
||||
freely, with the sole condition that the distribution includes the
|
||||
following statement:
|
||||
|
||||
"This software includes the Objective Caml run-time system,
|
||||
which is copyright 1996 INRIA."
|
||||
|
||||
Executable files that include the Objective Caml interactive system
|
||||
(such as those generated by the ocamlmktop command) can also be
|
||||
distributed freely, with the sole condition that the distribution
|
||||
includes the following statement:
|
||||
|
||||
"This software includes the Objective Caml interactive system,
|
||||
which is copyright 1996 INRIA."
|
||||
|
||||
|
|
14
README
14
README
|
@ -16,7 +16,7 @@ standalone programs, or as an interactive, toplevel-based system.
|
|||
The other compiler generates high-performance native code for a number
|
||||
of processors. Compilation takes longer and generates bigger code, but
|
||||
the generated programs deliver excellent performance (better than
|
||||
Standard ML of New Jersey 1.08 on our tests), while retaining the
|
||||
Standard ML of New Jersey 1.09 on our tests), while retaining the
|
||||
moderate memory requirements of the bytecode compiler. The native-code
|
||||
compiler currently runs on the following platforms:
|
||||
|
||||
|
@ -42,10 +42,13 @@ conversion from Caml Special Light to Objective Caml.
|
|||
|
||||
CONTENTS:
|
||||
|
||||
Changes what's new with each release
|
||||
INSTALL instructions for installation
|
||||
INSTALL.MPW infos on the Macintosh MPW port of Objective Caml
|
||||
LICENSE license and copyright notice
|
||||
Makefile main Makefile
|
||||
README this file
|
||||
README.win32 infos on the MS Windows NT/Windows 95 port of O.Caml
|
||||
asmcomp/ native-code compiler and linker
|
||||
asmrun/ native-code runtime library
|
||||
boot/ bootstrap compiler
|
||||
|
@ -56,6 +59,7 @@ CONTENTS:
|
|||
driver/ driver code for the compilers
|
||||
emacs/ Caml editing mode and debugger interface for GNU Emacs
|
||||
lex/ lexer generator
|
||||
otherlibs/ several external libraries
|
||||
parsing/ syntax analysis
|
||||
stdlib/ standard library
|
||||
tools/ various utilities
|
||||
|
@ -75,10 +79,11 @@ the copyright notice remains attached.
|
|||
INSTALLATION:
|
||||
|
||||
See the file INSTALL for installation instructions on Unix machines.
|
||||
For MS Windows, see README.win32. For the Macintosh, see INSTALL.MPW.
|
||||
|
||||
DOCUMENTATION:
|
||||
|
||||
The Objective Caml manual is distributed in Postscript, DVI, and
|
||||
The Objective Caml manual is distributed in HTML, Postscript, DVI, and
|
||||
plain text. It can be obtained by anonymous FTP from ftp.inria.fr as
|
||||
described below. It is also available on the World Wide Web, at
|
||||
|
||||
|
@ -100,7 +105,7 @@ There exists a mailing list of users of the Caml implementations
|
|||
developed at INRIA. The purpose of this list is to share
|
||||
experience, exchange ideas (and even code), and report on applications
|
||||
of the Caml language. This list is moderated; messages can be
|
||||
written in English or in French. The list has about 200 subscribers.
|
||||
written in English or in French. The list has about 400 subscribers.
|
||||
|
||||
Messages to the list should be sent to:
|
||||
|
||||
|
@ -132,5 +137,6 @@ The mailing list caml-light@inria.fr is forwarded to
|
|||
a small group of implementors at INRIA. For general questions and
|
||||
discussions, caml-list@inria.fr is better; for bug reports
|
||||
and very specific technical questions, caml-light@inria.fr
|
||||
is preferred. We often cross-post from one list to the other, anyway.
|
||||
is preferred. We often redirect messages from one list to the other,
|
||||
anyway.
|
||||
|
||||
|
|
|
@ -47,7 +47,7 @@ while : ; do
|
|||
x11_include_dir=$2; shift;;
|
||||
-x11lib*|--x11lib*)
|
||||
x11_lib_dir=$2; shift;;
|
||||
-with-pthread|--with-pthread)
|
||||
-with-pthread*|--with-pthread*)
|
||||
posix_threads=yes;;
|
||||
*) echo "Unknown option \"$1\"." 1>&2; exit 2;;
|
||||
esac
|
||||
|
@ -155,6 +155,7 @@ case "$bytecc,$host" in
|
|||
# Turn off warning "unused library"
|
||||
bytecclinkopts="-32 -Wl,-woff,84";;
|
||||
cc*,mips-*-irix6*)
|
||||
# (For those who wnat to force "cc -64")
|
||||
# Turn off warning "unused library"
|
||||
bytecclinkopts="-Wl,-woff,84";;
|
||||
esac
|
||||
|
|
|
@ -21,7 +21,7 @@ work around the following problems:
|
|||
|
||||
The first problem no longer affects the Win32unix library.
|
||||
|
||||
The second problem makes it impoosible, under Windows 95, to create an
|
||||
The second problem makes it impossible, under Windows 95, to create an
|
||||
in_channel or out_channel on a file descriptor opened on a socket,
|
||||
using the in_channel_of_descr* and out_channel_of_descr*.
|
||||
|
||||
|
|
Loading…
Reference in New Issue