The interactive file manager requires Javascript. Please enable it or use sftp or scp.
You may still browse the files here.
Here are the changes from version 20051202 to version 20070826.
Summary:
+ New platforms:
o amd64-linux, amd64-freebsd
o hppa-hpux
o powerpc-aix
o x86-darwin (Mac OS X)
+ Compiler.
o Support for 64-bit platforms.
* Native amd64 codegen.
o Command-line switches.
* Added: -codegen amd64, -codegen x86, -default-type <type>,
-profile-val {false|true}.
* Changed: -stop f (file listing now includes .mlb files)
o Bytecode codegen.
* Support for profiling.
* Support for exception history.
+ Language.
o ML Basis annotations.
* Removed: allowExport, allowImport, sequenceUnit, warnMatch.
+ Libraries.
o Basis Library.
* Added: PackWord16Big, PackWord16Little, PackWord64Big,
PackWord64Little.
* Bug Fixes: see changelog.
o MLton structure.
* Added: MLTON_MONO_ARRAY, MLTON_MONO_VECTOR, MLTON_REAL,
MLton.BinIO.tempPrefix, MLton.CharArray, MLton.CharVector,
MLton.IntInf.BigWord, MLton.IntInf.SmallInt,
MLton.Exn.defaultTopLevelHandler,
MLton.Exn.getTopLevelHandler, MLton.Exn.setTopLevelHandler,
MLton.LargeReal, MLton.LargeWord, MLton.Real, MLton.Real32,
MLton.Real64, MLton.Rlimit.Rlim, MLton.TextIO.tempPrefix,
MLton.Vector.create, MLton.Word.bswap, MLton.Word8.bswap,
MLton.Word16, MLton.Word32, MLton.Word64, MLton.Word8Array,
MLton.Word8Vector.
* Changed: MLton.Array.unfoldi, MLton.IntInf.rep, MLton.Rlimit,
MLton.Vector.unfoldi.
* Deprecated: MLton.Socket
o Other libraries.
* Added: MLRISC libary.
* Updated: ckit library, SML/NJ library.
+ Tools.
* 2007-08-12
- Removed deprecated ML Basis annotations.
* 2007-08-06
- Fixed bug in treatment of Real<N>.{scan,fromString} operations.
Real<N>.{scan,fromString} were using TO_NEAREST semantics, but
should obey current rounding mode. (Only Real<N>.fromDecimal is
specified to always have TO_NEAREST semantics.) Thanks to Sean
McLaughlin for the bug report.
* 2007-07-27
- Fixed bugs in constant-folding of floating-point operations with C
codegen.
* 2007-07-26
- Fixed bug in treatment of floating-point operations. Floating-point
operations depend on the current rounding mode, but were being
treated as pure. Thanks to Sean McLaughlin for the bug report.
* 2007-07-13
- Added MLton.Exn.{default,get,set}TopLevelHandler.
* 2007-07-12
- Restored native option to -codegen flag.
* 2007-07-11
- Fixed bug in Real32.toInt: conversion of real values close to
Int.maxInt could be incorrect.
* 2007-07-07
- Updates to bytecode code generator: support for amd64-* targets,
support for profiling (including exception history).
- Fixed bug in Socket module of Basis Library; unmarshalling of
socket options (for get* functions) used andb rather than orb.
Thanks to Anders Petersson for the bug report (and patch).
* 2007-07-06
- Fixed bug in Date module of Basis Library; some functions would
erroneously raise Date when given a year <= 1900. Thanks to Joe
Hurd for the bug report.
- Fixed a long-standing bug in monomorphisation pass. Thanks to
Vesa Karvonen for the bug report.
* 2007-05-18
- Native amd64 code generator for amd64-* targets.
- Eliminate native option from -codegen flag.
- Add x86 and amd64 options to -codegen flag.
* 2007-04-29
- Improved type checking of RSSA and Machine ILs.
* 2007-04-14
- Fixed aliasing issues with basis/Real/*.c files.
- Added real/word casts in MLton structure.
* 2007-04-12
- Added primitives for bit cast of word to/from real.
- Implement PackReal<N>{Big,Little} using PackWord<N>{Big,Little}
and bit casts.
* 2007-04-11
- Move all system header #include-s to platform/ os headers.
- Use C99 <assert.h>, rather than custom "assert.{h,c}".
* 2007-03-13
- Implement PackWord<N>{Big,Little} entirely in ML, using an ML
byte swap function.
* 2007-02-25
- Change amd64-* target platforms from 32-bit compatability mode
(i.e., -m32) to 64-bit mode (i.e., -m64). Currently, only the C
codegen is able to generate 64-bit executables.
* 2007-02-23
- Removed expert command line switch -coalesce <n>.
- Added expert command line switch -chunkify {coalesce<n>|func|one}.
* 2007-02-20
- Fixed bug in PackReal<N>.toBytes. Thanks to Eric McCorkle for the
bug report (and patch).
* 2007-02-18
- Added command line switch -profile-val, to profile the evaluation of
val bindings; this is particularly useful with exception history for
debugging uncaught exceptions at the top-level.
* 2006-12-29
- Added command line switch -show {anns|path-map} and deprecated command
line switch -show-anns {false|true}. Use -show path-map to see the
complete MLB path map as seen by the compiler.
* 2006-12-20
- Changed the output of command line switch -stop f to include mlb-files.
This is useful for generating Makefile dependencies. The old output is
easy to recover if necessary (e.g. grep -v '\.mlb$').
* 2006-12-8
- Added command line switches -{,target}-{as,cc,link}-opt-quote, which
pass their argument as a single argument to gcc (i.e., without
tokenization at spaces). These options support using headers and
libraries (including the MLton runtime headers and libraries) from a
path with spaces.
* 2006-12-02
- Extensive reorganization of garbage collector, runtime system, and
Basis Library implementation. (This is in preparation for future
64bit support.) They should be more C standards compliant and easier
to port to new systems.
- FFI revisions
Disallow nested indirect types (e.g., int array array).
* 2006-11-30
- Fixed a bug in elaboration of FFI forms; unary FFI types (e.g.,
array, ref, vector) could be used in places where MLton.Pointer.t was
required. This would later cause the compiler to raise the TypeError
exception, along with a lot of XML IL.
* 2006-11-19
- On *-darwin, work with GnuMP installed via Fink or MacPorts.
* 2006-10-30
- Ported to x86-darwin.
* 2006-09-23
- Added missing specification of find to the MONO_VECTOR signature.
* 2006-08-03
- Fixed a bug in the "useless" SSA optimization, caused by calling
an imported C function and then ignoring the result.
* 2006-06-24
- Fixed a bug in pass to flatten data structures. Thanks to Joe Hurd
for the bug report.
* 2006-06-08
- Fixed a bug in the native codegen's implementation of the C-calling
convention.
* 2006-05-11
- Ported to PowerPC-AIX.
- Fixed a bug in the runtime for the cases where nonblocking IO with
sockets was implemented using MSG_DONTWAIT. This flag does not
exist on AIX, Cygwin, HPUX, and MinGW and was previously just
ignored. Now the runtime simulates the flag for these platforms
(except MinGW, yet, where it's still ignored).
* 2006-05-06
- Added -default-type '<ty><N>' for specifying the binding of default
types in the Basis Library (e.g., Int.int).
* 2006-04-25
- Ported to HPPA-HPUX.
- Fixed PackReal{,32,64}{Big,Little} to follow the Basis Library
specification.
* 2006-04-19
- Fixed a bug in MLton.share that could cause a segfault.
* 2006-03-30
- Changed MLton.Vector.unfoldi to return the state in addition to the
result vector.
* 2006-03-30
- Added MLton.Vector.create, a more powerful vector-creation function
than is available in the basis library.
* 2006-03-04
- Added MLRISC from SML/NJ 110.57 to standard distribution.
* 2006-03-03
- Fixed bug in SSA simplifier that could eliminate an irredundant test.
* 2006-03-02
- Ported a bugfix from SML/NJ for a bug with the combination of withNack
and never in CML.
* 2006-02-09
- Support compiler specific annotations in ML Basis files. If an
annotation contains ":", then the text preceding the ":" is meant to
denote a compiler. For MLton, if the text preceding the ":" is equal
to "mlton", then the remaining annotation is scanned as a normal
annotation. If the text preceding the ":" is not-equal to "mlton",
then the annotation is ignored, and no warning is issued.
* 2006-02-04
- Fixed bug in elaboration of functors; a program with a very large
number of functors could exhibit the error
"ElaborateEnv.functorClosure: firstTycons".