new rpms
Stephen Weeks
MLton@sourcelight.com
Wed, 4 Oct 2000 11:23:03 -0700 (PDT)
are available at
http://www.star-lab.com/sweeks/mlton-20001004-1.i386.rpm
http://www.star-lab.com/sweeks/mlton-20001004-1.src.rpm
These include the new TextIO libraries, and the LimitCheck bug fix. Here are
the changes since 20000906.
* 2000-10-4
- Changed LimitCheck so it loops on the frontier > limit check. This fixed
a potential bug in threads caused when there is enough space available for
a thread, t, before switching to another thread but not enough space when t
resumes. This could have caused a segfault.
* 2000-10-3
- More rewrites of TextIO.StreamIO to improve speed.
- Changed TextIO so that only TextIO.stdErr is unbuffered.
- Changed TextIO so that FIFOs and sockets are not buffered.
* 2000-10-2
- Combined remove-unused-constructors, remove-unused-functions, and
remove-unused-globals into a single pass that runs to fixed-point and
produces results at least as good as running the previous three in (any)
sequence.
* 2000-9-29
- Added GC_FIRST_CHECK, which does a gc at each limit check the first time it
reached.
- Reimplemented TextIO.StreamIO (from 2000-9-12) to use lists of strings
instead of lists of characters so that the per char space overhead is small.
* 2000-9-21
- Fixed bug in profiling labels in C code. The label was always the basic
block label instead of the cps function label.
- Added -b switch to mlprof to gather data at the basic block level.
- Improved performance of TextIO.input1 by about 3X.
* 2000-9-15 - 2000-9-19
- Added overflow exceptions to CPS and Machine ILs.
* 2000-9-12
- Fixed TextIO.scanStream. It was very broken.
- Added TextIO.{getInstream,mkInstream,setInstream}
TextIO.StreamIO.{canInput,closeIn,endOfStream,input1,input,inputAll,inputLine,inputN}
* 2000-9-11
- Fixed Real_qequal in mlton-lib.h. It was missing a paren that caused
code using it to not even compile. It was also semantically incorrect.
- Noted that Real_{equal,lt,le,gt,ge} may not follow basis library spec, since
ANSI does not require IEEE compliance, and hence these could return wrong
results when nans are involved.