Home My Page Projects Code Snippets Project Openings SML/NJ
Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files

SCM Repository

[smlnj] Diff of /sml/trunk/HISTORY
ViewVC logotype

Diff of /sml/trunk/HISTORY

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1190, Mon May 13 20:39:05 2002 UTC revision 1479, Thu Apr 22 21:37:35 2004 UTC
# Line 7  Line 7 
7    
8  The form of an entry should be:  The form of an entry should be:
9    
10    Name: Matthias Blume (blume (at) tti - c (dot) org)
11    Date: 2004/04/22 16:35:00 CDT
12    Tag: blume-20040422-Option
13    Description:
14    
15    Made exception Option to be the same as exception Option.Option
16    (as it should be).
17    
18    ----------------------------------------------------------------------
19  Name:  Name:
20  Date: yyyy/mm/dd  Date: yyyy/mm/dd
21  Tag: <post-commit CVS tag>  Tag: <post-commit CVS tag>
22  Description:  Description:
23    
24  ----------------------------------------------------------------------  ----------------------------------------------------------------------
25    Name: Allen Leung (leunga (at) reservoir (dot) com)
26    Date: 2004/03/19 14:40:00 EST
27    Tag: leunga-20040319-cygwin-nlffi
28    Description:
29    
30    Fixed the runtime so that ml-nlffi-lib runs on the cygwin version
31    of SML/NJ.  The problem is that
32    
33       lib = dlopen(NULL, ...)
34       f   = dlsym(lib, "malloc");
35    
36    does not work on Windows unless we explicitly export symbols
37    such as 'malloc' during linking.  We fixed this by explicitly
38    exporting the required symbols with the magic gcc incantation:
39    
40        -Wl,--export-all cygwin.def
41    
42    where cygwin.def is a file containing all the symbols that
43    we wish to export.
44    
45    I suspect this is a Windows problem and we'll have to
46    do the same (somehow with windows compilers) when
47    we build the native win32 version with the system
48    calls LoadLibrary/GetProcAddress.
49    
50    ----------------------------------------------------------------------
51    Name: Matthias Blume (blume (at) tti - c (dot) org)
52    Date: 2004/03/04 16:35:00 CST
53    Tag: blume-20040304-intinf-fmt
54    Description:
55    
56    Fixed problem with IntInf.fmt (sign would show up on the right instead
57    of on the left for BIN, OCT, and HEX).
58    
59    ----------------------------------------------------------------------
60    Name: Matthias Blume (blume (at) tti - c (dot) org)
61    Date: 2004/03/04 11:25:00 CST
62    Tag: blume-20040304-symlinks
63    Description:
64    
65    Fixed problem with installer script (unix only) where bin/ml-yacc and
66    friends pointed (via symlinks) to absolute locations instead of just
67    .run-sml.  This was reported by Vesa A Norrman.
68    
69    ----------------------------------------------------------------------
70    Name: Matthias Blume (blume (at) tti - c (dot) org)
71    Date: 2004/02/13 14:50:00 CST
72    Tag: Release_110_45
73    Description:
74    
75    New working version (110.45). New bootfiles.
76    
77    ----------------------------------------------------------------------
78    Name: Matthias Blume (blume (at) tti - c (dot) org)
79    Date: 2004/01/26 15:15:15 CST
80    Tag: blume-20040126-toplevel
81    Description:
82    
83    Improved handling of exceptions at the interactive toplevel.
84    
85    ----------------------------------------------------------------------
86    Name: Matthias Blume (blume (at) tti - c (dot) org)
87    Date: 2004/01/26 11:25:00
88    Tag: blume-20040126-app
89    Description:
90    
91    Type of top-level "app" corrected.
92    Added code for setting vp_limitPtrMask to Win32-specific runtime.
93    
94    ----------------------------------------------------------------------
95    Name: Matthias Blume (blume (at) tti - c (dot) org)
96    Date: 2003/11/18 17:10 CST
97    Tag: blume-20031118-basis-fiddle
98    Description:
99    
100    - changed Timer interface to what might become the spec
101    - POSIX_FLAGS -> BIT_FLAGS according to spec
102    - some other minor discrepancies wrt. spec eliminated
103    
104    ----------------------------------------------------------------------
105    Name: Matthias Blume (blume (at) tti - c (dot) org)
106    Date: 2003/11/06 12:00:00 CST
107    Tag: Release_110_44
108    Description:
109    
110    New working version (110.44). New bootfiles.
111    
112    ----------------------------------------------------------------------
113    Name: Matthias Blume (blume (at) tti - c (dot) org)
114    Date: 2003/11/04 11:50:00 CST
115    Tag: blume-20031104-move-libraries
116    Description:
117    
118    Eliminated the "dont_move_libraries" directive in config/targets.
119    (The mechanism was broken and could not be fixed easily.  Moreover,
120    there does not seem to be any reason not to move all libraries into
121    lib during installation.  I originally implemented this directive as a
122    backward-compatibility feature when I first introduced the new CM.
123    Now that things have been stable for a long time and going back to the
124    old CM is not an option, there is no reason to keep it around.)
125    
126    ----------------------------------------------------------------------
127    Name: Matthias Blume (blume (at) tti - c (dot) org)
128    Date: 2003/11/03 16:00:00 CST
129    Tag: blume-20031103-installdir
130    Description:
131    
132    Made installer honor INSTALLDIR variable again.  (Thanks to Chris
133    Richards for pointing out the problem and providing the solution.)
134    
135    ----------------------------------------------------------------------
136    Name: Matthias Blume (blume (at) tti - c (dot) org)
137    Date: 2003/10/01 17:05:00 CDT
138    Tag: blume-20031001-lal-mlrisc
139    Description:
140    
141    MLRISC bug fix from Lal.
142    
143    ----------------------------------------------------------------------
144    Name: Matthias Blume (blume (at) tti - c (dot) org)
145    Date: 2003/09/30 16:10:00 CDT
146    Tag: blume-20030930-primio-bat
147    Description:
148    
149    1. Added openVector, nullRd, and nullWr to PRIM_IO.
150    2. Improved .bat files (for Win32 port) to make things work under Win95.
151       (thanks to Aaron S. Hawley for this one)
152    
153    ----------------------------------------------------------------------
154    Name: Matthias Blume (blume (at) tti - c (dot) org)
155    Date: 2003/09/26 16:05:00 CDT
156    Tag: blume-20030926-wrappriv
157    Description:
158    
159    Added missing wrapper for privilege "primitive" in $smlnj/viscomp/core.cm.
160    
161    ----------------------------------------------------------------------
162    Name: Matthias Blume (blume (at) tti - c (dot) org)
163    Date: 2003/09/26 15:00:00 CDT
164    Tag: blume-20030926-110_43_3
165    Description:
166    
167    - additional cleanup
168    - version number bump, NEW BOOTFILES
169    
170    ----------------------------------------------------------------------
171    Name: Matthias Blume (blume (at) tti - c (dot) org)
172    Date: 2003/09/26 12:00:00 CDT
173    Tag: blume-20030926-ppautoload
174    Description:
175    
176    I modified the read-eval-print loop so that the autoloader gets
177    invoked whenever the prettyprinter tries to look up a symbol that
178    is not currently defined in the toplevel environment but which
179    appears in CM's autoload registry.  As a result, we see far fewer of
180    those ?.Foo.Bar.xxx names in the prettyprinter's output.
181    
182    In addition to this I tried to clean up some pieces of the Basis
183    implementation (e.g., Socket, Word8Array) in order to prevent other
184    instances of these ?.Foo.Bar.xxx names from being printed.
185    
186    The mechanism that picks names for types still needs some work, though.
187    (Right now it seems that if there is a type A.t which is defined to
188    be B.u, but B is unavailable at toplevel, then A.t gets printed as
189    "?.B.u" although the perhaps more sensible solution would be to use
190    "A.t" in this case.  In other words, the prettyprinter should follow
191    a chain of DEFtycs not farther than there are corresponding toplevel
192    names in the current environment.)
193    
194    ----------------------------------------------------------------------
195    Name: Matthias Blume (blume (at) tti - c (dot) org)
196    Date: 2003/09/24 16:31:00 CDT
197    Tag: blume-20030924-installer
198    Description:
199    
200    Another installer tweak:  All the ML code for the installer is now
201    compiled during CMB.make and put into a little library called
202    $smlnj/installer.cm.  The installation then simply invokes
203    
204       sml -m $smlnj/installer.cm
205    
206    and everything happens automagically.
207    
208    Win32:  ML code senses value of environment variable SMLNJ_HOME.
209    Unix:   ML code senses values of environment variables ROOT, CONFIGDIR,
210            and BINDIR.
211    
212    The new scheme guarantees that the ML code responsible for the installation
213    is in sync with the APIs of the main system.  Also, the installer is
214    somewhat faster because the installer script is precompiled.
215    
216    ----------------------------------------------------------------------
217    Name: Matthias Blume (blume (at) tti - c (dot) org)
218    Date: 2003/09/24 15:35:00 CDT
219    Tag: blume-20030924-synsock
220    Description:
221    
222    Added a signature SYNCHRONOUS_SOCKET to basis.cm.  This is like SOCKET
223    but excludes all non-blocking operations.  Defined SOCKET (in Basis)
224    and CML_SOCKET in terms of SYNCHRONOUS_SOCKET.  Removed superfluous
225    implementations of non-blocking operations from CML's Socket
226    structure.
227    
228    ----------------------------------------------------------------------
229    Name: Matthias Blume (blume (at) tti - c (dot) org)
230    Date: 2003/09/24 15:10:05 CDT
231    Tag: blume-20030924-sockets
232    Description:
233    
234    1. Fixed SOCKET API and implementation to match Basis spec.
235       This required changing the internal representation of sockets to one
236       that remembers (for each socket file descriptor) whether it is currently
237       blocking or non-blocking.  This state is maintained lazily (i.e., a system
238       call is made only if the state actually needs to change).
239    
240    2. OS-specific details of sockets were moved into separate files, thus
241       making it possible to unify the bulk of the socket implementations
242       between Unix and Win32.
243    
244    3. CML's socket API changed accordingly.
245       (Note that we need to remove non-blocking functions from this API
246       since they are redundant in the case of CML!)
247    
248    4. CML's socket implementation now makes use of non-blocking functions
249       provided by Basis, thus removing all OS-dependent code from this part
250       of CML.
251    
252    5. Changed Real64.precision from 52 to 53.  Minor cleanup in Real64 code.
253    
254    ----------------------------------------------------------------------
255    Name: Matthias Blume (blume (at) tti - c (dot) org)
256    Date: 2003/09/22 12:10:00 CDT
257    Tag: blume-20030922-110_43_2
258    Description:
259    
260    Made a new interim version and bootfiles for developer's bootstrapping
261    convenience.
262    
263       110.43.2 -- NEW BOOTFILES
264    
265    ----------------------------------------------------------------------
266    Name: Matthias Blume (blume (at) tti - c (dot) org)
267    Date: 2003/09/19 15:55:00 CDT
268    Tag: blume-20030919-cmdir
269    Description:
270    
271    1. new-install.sh -> install.sh
272    2. changed default CM "metadata" directory name to ".cm" (instead of "CM")
273    3. tweaked installer so that another name instead of .cm can be chosen
274       at install time (by setting the CM_DIR_ARC environment variable
275       during installation); once installation is complete, the name is
276       fixed
277    
278    ----------------------------------------------------------------------
279    Name: Matthias Blume (blume (at) tti - c (dot) org)
280    Date: 2003/09/18 16:00:00 CDT
281    Tag: blume-20030918-110_43_1
282    Description:
283    
284    Made a new interim version and bootfiles for developer's bootstrapping
285    convenience.
286    
287       110.43.1 -- NEW BOOTFILES
288    
289    ----------------------------------------------------------------------
290    Name: Matthias Blume (blume (at) tti - c (dot) org)
291    Date: 2003/09/18 15:20:00 CDT
292    Tag: blume-20030918-misc
293    Description:
294    
295    1. Exported fractionsPerSecond etc. from TimeImp (but not from Time as
296       this seems to be controversial at the moment) and used those in
297       Posix.ProcEnv.times.
298    
299    2. Added Time.{from,to}Nanoseconds to Time.
300    
301    3. Improved Real.{from,to}LargeInt by avoiding needless calculations.
302       For example, fromLargeInt never needs to look at more than 3 "big
303       digits" to get its 53 bits of precision.
304    
305    ----------------------------------------------------------------------
306    Name: Matthias Blume (blume (at) tti - c (dot) org)
307    Date: 2003/09/17 16:30:00 CDT
308    Tag: blume-20030917-real32-slices
309    Description:
310    
311    Added an entry to the primitive environment
312    (compiler/Semant/statenv/prim.sml) for int32->real64 conversion and
313    added code to compiler/CodeGen/main/mlriscGen.sml to implement it.
314    
315    Removed some of the "magic" constants in real64.sml and replaced them
316    with code that generates these values from their corresponding
317    integer counterparts.
318    
319    Made all(?) the slice-related changes to the Basis and made everything
320    compile again...
321    
322    ----------------------------------------------------------------------
323    Name: Matthias Blume (blume (at) tti - c (dot) org)
324    Date: 2003/09/15 17:45:00 CDT
325    Tag: blume-20030915-rbase
326    Description:
327    
328    Fixed bug in Real.fromLargeInt.
329    
330    ----------------------------------------------------------------------
331    Name: Matthias Blume (blume (at) tti - c (dot) org)
332    Date: 2003/09/13 18:11:00 CDT
333    Tag: blume-20030913-libinstall
334    Description:
335    
336    Minor bugfix in config/libinstall (set anchor with path to
337    standalone tool after installing it, otherwise libraries that
338    need ml-lex or ml-yacc won't compile the first time the installer
339    runs).
340    
341    ----------------------------------------------------------------------
342    Name: Matthias Blume (blume (at) tti - c (dot) org)
343    Date: 2003/09/12 11:45:00 CDT
344    Tag: blume-20030912-various
345    Description:
346    
347     - fixed bug in Real.toLargeInt
348     - fixed bug in Posix.ProcEnv.times
349     - changed inputLine functions to return an option
350     - minor installer improvements / bugfixes
351     - changed default @SMLalloc parameter for x86/celeron to 64k
352    
353    ----------------------------------------------------------------------
354    Name: Matthias Blume (blume (at) tti - c (dot) org)
355    Date: 2003/09/09 22:00:00 CDT
356    Tag: Release_110_43
357    Description:
358    
359        New working release 110.43.  New bootfiles.
360    
361    ----------------------------------------------------------------------
362    Name: Matthias Blume (blume (at) tti - c (dot) org)
363    Date: 2003/09/09 19:20:00 CDT
364    Tag: blume-20030909-installer
365    Description:
366    
367    Rewrote large parts of config/install.sh in SML (config/libinstall.sml).
368    Modified config/install.bat to take advantage of it.  Also modified
369    config/install.sh (and called it config/new-install.sh) to take advantage
370    of it on Unix systems.  (The SML code is (supposed to be) platform-
371    independent.)
372    
373    The installer can now install everything under Win32
374    as well as under *nix as long as it compiles.
375    
376    Other changes:
377    
378      - made CML compile again under Win32
379      - made eXene compile under Win32 (by providing a fake structure UnixSock
380        and by using OS.Process.getEnv instead of Posix.ProcEnv.getenv)
381      - fixed a bug in nowhere: it assumed that type OS.Process.status is the
382        same as type int;  under Win32 it isn't
383      - fixed some slice-related problems in the win32-specific parts of CML
384      - added a functor argument "sameVol" to os-path-fn.sml in the Basis
385        (under Win32, the volume name is case-insensitive, and the
386        OS.Path code compares volume names for equality)
387    
388    ----------------------------------------------------------------------
389    Name: Matthias Blume (blume (at) tti - c (dot) org)
390    Date: 2003/09/08 11:55:00 CDT
391    Tag: blume-20030908-fullpath
392    Description:
393    
394    Made Win32 version of OS.FileSys.fullPath return current directory
395    when given an empty string.  This is what the spec says, and incidentally,
396    CM depends on it.  (CM otherwise goes into an infinite loop in certain
397    cases when presented with the name of a non-existing .cm file.)
398    
399    ----------------------------------------------------------------------
400    Name: Matthias Blume (blume (at) tti - c (dot) org)
401    Date: 2003/09/04 16:30:00 CDT
402    Tag: blume-20030905-slices-etc
403    Description:
404    
405      1. Changed interface to vectors and arrays in Basis to match
406         (draft) Basis spec.
407      2. Added signatures and implementations of slices according to
408         Basis spec.
409      3. Edited source code throughout the system to make it compile again
410         under 1. and 2.  (In some cases code had to be added to have it
411         match the new signatures.)
412      4. MLRISC should be backward-compatible: the copies of the originals
413         of files that needed to change under 3. were retained, the .cm files
414         check the compiler version number and use old versions when
415         appropriate.
416      5. Changed type of OS.FileSys.readDir and Posix.FileSys.readdir to
417         dirstream -> string option (in accordance with Basis spec).
418      6. When generating code that counts lines, ml-lex used function
419         CharVector.foldli, taking advantage of its old interface.
420         This has been replaced with the corresponding code from
421         CharVectorSlice.  (html-lex must be re-lexed!)
422      7. BitArray in smlnj-lib/Util has been extended/modified to match the
423         new MONO_ARRAY signature.  (Do we need BitArraySlice?)
424      8. Removed temporary additions (fromInternal, toInternal) from the
425         (now obsolete) IntInf in smlnj-lib/Util.
426      9. Cleaned up structure Byte.
427     10. Added localOffset, scan, and fromString to Date (according to spec).
428         Cleaned/corrected implementation of Date.
429         (Still need to check for correctness; implement better canonicalizeDate.)
430     11. Added "scan" to signature IEEE_REAL.
431     12. Some improvements to IntInf [in particular: efficiency-hack for
432         mod and rem when second operand is 2 (for parity checks).]
433     13. Changed representation of type Time.time, using a single IntInf.int
434         value counting microseconds.  This considerably simplified the
435         implementation of structure Time.  We now support negative time
436         values; scan and fromString handle signs.
437     14. Functor PrimIO now takes two additional arguments (VectorSlice and
438         ArraySlice).
439    
440    ----------------------------------------------------------------------
441    Name: Matthias Blume (blume (at) tti - c (dot) org)
442    Date: 2003/08/28 17:00:00 CDT
443    Tag: blume-20030828-intinf
444    Description:
445    
446    This is a major update which comes with a version number bump
447    (110.42.99 -- yes, we are really close to 110.43 :-), NEW BOOTFILES,
448    and an implementation of IntInf in the Basis.
449    
450    There are a fairly large number of related changes and updates throughout
451    the system:
452    
453    Basis:
454            - Implemented IntInf.
455            - Made LargeInt a projection of IntInf (by filtering through INTEGER).
456            - Added some missing Real64 operations, most notably Real.toLargeInt.
457            - Added FixedInt as a synonym for Int32.
458    
459    compiler:
460            * Added support for a built-in intinf type.
461              - literals
462              - pattern matching
463              - conversion shortcuts (Int32.fromLarge o Int.toLarge etc.)
464              - overloading on literals and operations
465    
466            This required adding a primitive type intinf, some additional
467            primops, and implementations for several non-trivial intinf
468            operations in Core.  (The intinf type is completely abstract
469            to the compiler; all operations get delegated back to the Core.)
470    
471            * Intinf equality is handled by polyequal.  However, the compiler
472            does not print its usual warning in this case (since polyequal
473            is the right thing to do there).
474    
475            * Improved the organization of structure InlineT.
476    
477            * A word about conversion primops:
478            If conversions involving intinf do not cancel out during
479            CPS contract, then the compiler must insert calls to Core functions.
480            Since all core access must be resolved already during the FLINT
481            translate phase, it would be too late a the time of CPS contract
482            to add new Core calls.  For this reason, conversion primops
483            for intinf carry two arguments:  1. the numeric argument that
484            they are supposed to convert, and 2. the Core function that
485            can help with this conversion if necessary.  If CPS contract
486            eliminates a primop, then the associated Core function becomes
487            dead and goes away.  Intinf conversion primops that do not get
488            eliminated by CPS contract get rewritten into calls of their
489            core functions by a separate, new phase.
490    
491    interactive system:
492            - Control.Print.intinfDepth controls max length of intinf constants
493            being printed. (Analogous to Control.Print.stringDepth.)
494            - Cleanup in printutil and pputil: got rid of unused stuff and
495            duplicates; replaced some of the code with code that makes better
496            use of library functionality.
497    
498    CM:
499            Bugfix: parse-errors in init group (system/smlnj/init/init.cmi)
500            are no longer silent.
501    
502    CKIT:
503            Fixed mismatched uses of Int32 and LargeInt.  I always decided
504            in favor of LargeInt -- which is now the same as IntInf.
505            CKIT-knowledgable people should check whether this is what's
506            intended and otherwise change things back to using Int32 or
507            FixedInt.
508    
509    Throughout the code:
510            Started using IntInf.int literals and built-in operations
511            (e.g., comparison with 0) where this seems appropriate.
512    
513    
514    ----------------------------------------------------------------------
515    Name: Dave MacQueen (dbm@cs.uchicago.edu)
516    Date: 2003/08/13 11:36:00 CDT
517    Tag: dbm-20030813-mcz-merge1
518    Description:
519    
520    Merging changes from the mcz-branch development branch into trunk.
521    These changes involve replacement of the emulated old prettyprinter
522    interface with direct use of the SML/NJ Lib PP library, and fixing
523    of a couple of bugs (895, 1186) relating to error messages.  A new
524    prettyprinter for ast datatypes (Elaborator/print/ppast.{sig,sml})
525    has been added.
526    
527    ----------------------------------------------------------------------
528    Name: Matthias Blume (blume (at) tti - c (dot) org)
529    Date: 2003/08/11 15:45:00 CDT
530    Tag: blume-20030811-windows
531    Description:
532    
533    Version number bumped to 110.42.9.  NEW BOOTFILES!!!
534    
535        http://smlnj.cs.uchicago.edu/dist/working/110.42.9/
536    
537    This patch restores SML/NJ's ability to run under win32.  There are a
538    number of changes, including fixes for several bugs that had gone
539    unnoticed until now:
540    
541      - uname "CYGWIN_NT*" is recognized as win32 (This is relevant only when
542        trying to run the win32 version from within cygwin.)
543    
544      - There are a number of simple .bat scripts that substitute for their
545        corresponding Unix shell-scripts.  (See below.)
546    
547      - The internals of ml-build have been modified slightly.  The main
548        difference is that instead of calling ".link-sml" (or link-sml.bat)
549        using OS.Process.system, the ML process delegates this task back
550        to the script.  Otherwise problems arise in mixed environments such
551        as Cygwin where scripts look and work like Unix scripts, but
552        where OS.Process.system cannot run them.
553    
554      - In CM, the srcpath pickler used native pathname syntax -- which
555        is incorrect in the case of cross-compilation.  The new pickle format
556        is independent of platform-specific naming conventions.
557    
558      - Path configuration files (such as lib/pathconfig) can now choose
559        between native and standard syntax.  Placing a line of the form
560    
561            standard!
562    
563        into the file causes all subsequent paths to be interpreted using
564        CM standard pathname syntax (= Unix conventions); a line
565    
566            native!
567    
568        switches back to native style.  This was needed so that
569        path config files can be written portably, see src/system/pathconfig.
570    
571      - Runtime system:
572    
573          - win32-filesys.c:  get_file_time and set_file_time now
574            access modification time, not creation time.
575    
576          - I/O code made aware of new array representation.
577    
578          - Bug fixes in X86.prim.masm.
579    
580       - src/system/makeml made aware of win32. (For use under cygwin
581            and other Unix-environments for windows.)
582    
583       - In Basis, fixed off-by-one error in win32-io.sml (function vecF)
584         which caused BinIO.inputAll to fail consistently.
585    
586    .bat scripts:
587    
588       Windows .bat scripts assume that SMLNJ_HOME is defined.
589    
590       - sml.bat, ml-yacc.bat, ml-lex.bat:  Driver scripts for standalone
591         applications (sml, ml-yacc, ml-lex).
592       - ml-build.bat: analogous to ml-build.
593       - config\install.bat:  Analogous to config/install.sh.  This requires
594         that SMLNJ_HOME is set and that Microsoft Visual C is ready to use.
595         (nmake etc. must be on the path, and vcvars32 must have been run.)
596         Moreover, sources for ml-lex and ml-yacc need to exist under src,
597         and the bootfile hierarchy must have been unpacked under
598         sml.boot.x86-win32.
599         The script is very primitive and does a poor job at error checking.
600         It only installs the base system, ml-lex, and ml-yacc.  No other
601         libraries are being installed (i.e., you get only those that
602         are part of the compiler.)
603       - link-sml.bat:  analogous to .link-sml, but not currently used
604    
605    Unrelated bug fixes:
606    
607      - ml-nlffigen now exports structures ST_* corresponding to incomplete
608        types.
609      - Added getDevice to PP/src/pp-debug-fn.sml.  (Would not compile
610        otherwise.)
611    
612    ----------------------------------------------------------------------
613    Name: Dave MacQueen (macqueen@cs.uchicago.edu)
614    Date: 2003/06/17
615    Tag: macqueen-20030617-bug895
616    Description:
617    
618    Modified compiler/Elaborator/print/pptype.sml to fix bug 895.
619    Tag will be used for new development branch (mcz-branch) for
620    use by MacQueen, (Lucasz) Zairek, and (George) Cao at uchicago.
621    
622    ----------------------------------------------------------------------
623    Name: Matthias Blume (blume (at) tti - c (dot) org)
624    Date: 2003/05/27 16:55:00 CDT
625    Tag: blume-20030527-polyeq
626    Description:
627    
628    Tried to eliminated most cases of polymorphic equality.
629    
630    ----------------------------------------------------------------------
631    Name: Matthias Blume (blume (at) tti - c (dot) org)
632    Date: 2003/05/21 17:45:00 CDT
633    Tag: blume-20030517-complete
634    Description:
635    
636    Two changes:
637    
638      1. Added a flag for controlling whether non-exhaustive bindings will
639         be treated as errors (default is false).
640      2. Cleaned up the *entire* source tree so that CMB.make goes through
641         without a single non-exhaustive match- or bind warning.
642    
643    ----------------------------------------------------------------------
644    Name: Matthias Blume (blume (at) tti - c (dot) org)
645    Date: 2003/05/17 10:20:00 CDT
646    Tag: blume-20030517-absyn
647    Description:
648    
649    1. Added cases for IF, WHILE, ANDALSO, and ORELSE to Absyn.
650    
651       This mainly affects the quality of error messages.  However, some
652       of the code is now more straightforward than before. (Treatment of
653       the above four constructs in translate.sml is much simpler than
654       the "macro-expansion" that was going on before.  Plus, the mach-
655       compiler no longer gets invoked just to be able to compile an
656       if-expression.)
657    
658    2. The ErrorMsg.Error exception is now caught and absorbed by the
659       interactive loop.
660    
661    ----------------------------------------------------------------------
662    Name: Allen Leung
663    Date: 2003/05/16 13:05:00 CDT
664    Tag: leunga-20030516-cygwin-runtime
665    Description:
666    
667        Ported the runtime system to cygwin, which uses the unix
668    x86-unix bin files.  Missing/buggy features:
669    
670       o getnetbyname, getnetbyaddr: these functions seem to be missing in
671         the Cygwin library.
672       o Ctrl-C handling may be flaky.
673       o Windows system calls and Windows I/O are not supported.
674    
675       A new set of binfiles is located at:
676    
677         http://www.dorsai.org/~leunga/boot.x86-unix.tgz
678    
679       This is only needed for bootstrapping the cygwin version of smlnj.
680       Other x86 versions can use the existing binfiles.
681    
682    ----------------------------------------------------------------------
683    Name: Matthias Blume
684    Date: 2003/04/08 15:42:00 CDT
685    Tag: blume-20030408-listpair
686    Description:
687    
688    1. Added a target 'mlrisc' to installer.
689    
690    2. Added missing elements to structure ListPair.
691    
692    ----------------------------------------------------------------------
693    Name: Allen Leung
694    Date: 2003/01/07 10:40:00 EST
695    Tag: leunga-20030107-int-rem
696    Description:
697    
698    Fixed a bug in Int.rem(x,y) where y is a power of 2 on x86.
699    The arguments to the SUBL instruction were swapped.
700    
701    ----------------------------------------------------------------------
702    Name: Matthias Blume
703    Date: 2002/12/12 16:25:00 EST
704    Tag: blume-20021212-risc-ra
705    Description:
706    
707    Fixed a serious bug in the rewrite code for FP spilling/reloading that
708    sent the RA into an infinite loop when floating point registers get
709    spilled.  (Because of this bug, e.g., nucleic stopped compiling between
710    110.37 and 110.38.)
711    There was another set of potential problems related to the handling of
712    MLRISC annotations (but those did not yet cause real problems, apparently).
713    
714    ----------------------------------------------------------------------
715    Name: Matthias Blume
716    Date: 2002/12/06 22:40:00 EST
717    Tag: blume-20021206-cm-fileid
718    Description:
719    
720    Added a call of SrcPath.sync at the beginning of Parse.parse (in CM).
721    This fixes the problem of CM getting confused by files that suddenly
722    change their identity (e.g., by getting unlinked and recreated by some
723    text editor such as vi).  There might be a better/cheaper/cleaner way
724    of doing this, but for now this will have to do.
725    
726    ----------------------------------------------------------------------
727    Name: Matthias Blume
728    Date: 2002/10/28 09:50:00 EST
729    Tag: blume-20021028-typecheck
730    Description:
731    
732    Exported structure Typecheck from $smlnj/viscomp/core.cm.
733    
734    ----------------------------------------------------------------------
735    Name: Matthias Blume
736    Date: 2002/10/17 09:10:00 EDT
737    Tag: Release_110_42
738    Description:
739    
740    In good old tradition, there has been a slight hiccup so that we have
741    to patch 110.42 after the fact.   The old release tag has been replaced
742    (see below).
743    
744    The change solves a problem with two competing approaches the
745    configuration problem regarding MacOS 10.1 vs. MacOS 10.2 which got in
746    each other's way.
747    
748    This change only affects the runtime system code and the installer script.
749    (No new bootfiles.)
750    
751    ----------------------------------------------------------------------
752    Name: Matthias Blume
753    Date: 2002/10/16 12:00:00 EDT
754    Tag: Release_110_42_removed
755    Description:
756    
757    New working release.  New bootfiles.
758    
759    ----------------------------------------------------------------------
760    Name: Matthias Blume
761    Date: 2002/10/10 13:10:00 EDT
762    Tag: blume-20021010-ppc-divs
763    Description:
764    
765    The mltree operator DIVS must be implemented with an overflow check on
766    the PPC because the hardware indicates divide-by-zero using "overflow" as
767    well.
768    
769    ----------------------------------------------------------------------
770    Name: Matthias Blume
771    Date: 2002/07/23 11:45:00
772    Tag: blume-20020723-smlnj-home
773    Description:
774    
775    Sml now senses the SMLNJ_HOME environment variable.  If this is set,
776    then the bin dir is assumed to be in $SMLNJ_HOME/bin and (unless
777    CM_PATHCONFIG is also set), the path configuration file is assumed
778    to be in $SMLNJ_HOME/lib/pathconfig.  This way one can easily move
779    the entire tree to some other place and everything will "just work".
780    
781    (Companion commands such as ml-build and ml-makedepend also sense this
782    variable.)
783    
784    ----------------------------------------------------------------------
785    Name: Matthias Blume
786    Date: 2002/07/12 21:19:00 EDT
787    Tag: blume-20020712-liveness
788    Description:
789    
790    Exported two useful "step" functions from liveness module (MLRISC).
791    
792    ----------------------------------------------------------------------
793    Name: Matthias Blume
794    Date: 2002/07/05 16:00 EDT
795    Tag: Release_110_41
796    Description:
797    
798    New working release.  New bootfiles.
799    
800    ----------------------------------------------------------------------
801    Name: Matthias Blume
802    Date: 2002/07/05 10:25:00 EDT
803    Tag: blume-20020705-btimp
804    Description:
805    
806    Exported structure BTImp from $smlnj/viscomp/debugprof.cm so that
807    other clients can set up backtracing support.
808    
809    ----------------------------------------------------------------------
810    Name: Matthias Blume
811    Date: 2002/06/25 17:23:00 EDT
812    Tag: blume-20020625-fpmax
813    Description:
814    
815    Fixed a bug in translation of INLMAX (and INLMIN) for the floating-point
816    case.  (The sense of the isNaN test was reversed -- which made min and
817    max always return their first argument.)
818    
819    ----------------------------------------------------------------------
820    Name: Matthias Blume
821    Date: 2002/06/11
822    Tag: blume-20020611-unixpath
823    Description:
824    
825    Back-ported OS.Path.{from,to}UnixPath from idlbasis-devel branch.
826    
827    ----------------------------------------------------------------------
828    Name: Matthias Blume
829    Date: 2002/06/10 16:35:00 EDT
830    Tag: blume-20020610-ieeereal
831    Description:
832    
833    I back-ported my implementation of IEEEReal.fromString from the
834    idlbasis-devel branch so that we can test it.
835    
836    Another small change is that ppDec tries to give more information
837    than just "<sig>" in the case of functors.  However, this code is
838    broken in some mysterious way if the functor's body's signature
839    has not been declared by ascription but gets inferred from the
840    implementation.  This needs fixing...
841    
842    ----------------------------------------------------------------------
843    Name: Matthias Blume
844    Date: 2002/05/31
845    Tag: blume-20020531-btrace-mode
846    Description:
847    
848    Resurrected SMLofNJ.Internals.BTrace.mode.  (It accidentally fell by
849    the wayside when I switched over to using Controls everywhere.)
850    
851    ----------------------------------------------------------------------
852    Name: Lal George
853    Date: 2002/05/23 12:21:40 EDT
854    Tag: george-20020523-visual-labels
855    Description:
856    
857    Labels are now displayed in the graphical output to make
858    the fall-through and target blocks obvious.
859    
860    ----------------------------------------------------------------------
861    Name: Matthias Blume
862    Date: 2002/05/22 11:03:00 EDT
863    Tag: blume-20020522-shrink
864    Description:
865    
866    John tweaked yesterday's fix for 1131 to handle an out-of-memory
867    situation that comes up when allocating huge arrays.
868    
869    ----------------------------------------------------------------------
870    Name: Matthias Blume
871    Date: 2002/05/21 16:00:00 EDT
872    Tag: Release_110_40
873    Description:
874    
875    New working release (110.40).  New bootfiles.
876    
877    [Also: John Reppy fixed GC bug 1131.]
878    
879    ----------------------------------------------------------------------
880    Name: Matthias Blume
881    Date: 2002/05/21 12:35:00 EDT
882    Tag: blume-20020521-cmdoc
883    Description:
884    
885    CM documentation update.
886    
887    ----------------------------------------------------------------------
888    Name: Matthias Blume
889    Date: 2002/05/21 10:55:00 EDT
890    Tag: blume-20020521-misc
891    Description:
892    
893    - John tweaked runtime to be silent on heap export (except when
894      GC messages are on).
895    - I added a few more things (cross-compiling versions of CMB) to
896      config/preloads (as suggestions).
897    
898    ----------------------------------------------------------------------
899    Name: Matthias Blume
900    Date: 2002/05/20 22:25:00 EDT
901    Tag: blume-20020520-controls
902    Description:
903    
904    - Added ControlUtil structure to control-lib.cm.
905    - Use it throughout.
906    - Used Controls facility to define MLRISC controls (as opposed to
907      registering MLRISC control ref cells with Controls after the fact)
908    - Fixed messed-up controls priorities.
909    
910    * Removed again all the stuff from config/preloads that one wouldn't
911      be able to preload at the time the initial heap image is built.
912      (Many libraries, e.g., CML, do not exist yet at this time.  The
913       only libraries that can be preloaded via config/preloads are those
914       that come bundled with the bootfiles.)
915    
916    ----------------------------------------------------------------------
917    Name: Matthias Blume
918    Date: 2002/05/20 10:59:00 EDT
919    Tag: blume-20020520-preloads
920    Description:
921    
922    Added a lot of commented-out suggestions for things to be included
923    in config/preloads.
924    
925    ----------------------------------------------------------------------
926    Name: Allen Leung
927    Date: 2002/05/18 14:20:00 EDT
928    Tag: leunga-20020518-mdl
929    Description:
930    
931    o Made the mdl tool stuff compile and run again.
932    o I've disabled all the stuff that depends on RTL specifications; they
933      are all badly broken anyway.
934    
935    ----------------------------------------------------------------------
936    Name: Matthias Blume
937    Date: 2002/05/17 16:49:00 EDT
938    Tag: blume-20020517-controls
939    Description:
940    
941    0. John Reppy made several modifications to the SML/NJ library.
942       In particular, there is a shiny new controls-lib.cm.
943    
944    1. Pushed new controls interface through compiler so that everything
945       compiles again.
946    
947    2. Added FormatComb and FORMAT_COMB to the CML version of the
948       SML/NJ library (so that CML compiles again).
949    
950    3. Modified init scripts because XXX_DEFAULT environment variables
951       are no longer with us.  (Boot-time initialization is now done
952       using the same environment variables that are also used for
953       startup-time initialization of controls.)
954    
955    ----------------------------------------------------------------------
956    Name: Lal George
957    Date: 2002/05/15 09:20:10 EDT
958    Tag: george-20020515-pseudo-op-decls
959    Description:
960    
961            All pseudo-ops emitted before the first segment declaration
962    such as TEXT, DATA, and BSS directives are assumed to be global
963    declarations and are emitted first in the assembly file. This is
964    useful in a number of situations where one has pseudo-ops that are not
965    specific to any segment, and also works around the constraint that one
966    cannot have client pseudo-ops in the TEXT segment.
967    
968            Because no segment is associated with these declarations it is
969    an error to allocate any space or objects before the first segment
970    directive and an exception will be raised. However, we cannot make
971    this check for client pseudo-ops.
972    
973            These top level declarations are a field in the CFG graph_info.
974    In theory you can continue to add to this field after the CFG has been
975    built -- provided you know what you are doing;-)
976    
977    ----------------------------------------------------------------------
978  Name: Matthias Blume  Name: Matthias Blume
979  Date: 2002/05/13 16:40:00 EDT  Date: 2002/05/13 16:40:00 EDT
980  Tag: blume-20020513-pp-etc  Tag: blume-20020513-pp-etc

Legend:
Removed from v.1190  
changed lines
  Added in v.1479

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0