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 1644, Sat Oct 9 03:50:36 2004 UTC revision 1791, Tue May 10 02:56:53 2005 UTC
# Line 14  Line 14 
14    
15  ----------------------------------------------------------------------  ----------------------------------------------------------------------
16  Name: Matthias Blume (blume (at) tti - c (dot) org)  Name: Matthias Blume (blume (at) tti - c (dot) org)
17    Date: 2005/05/09 21:55:00 CDT
18    Tag: blume-20050509-word64
19    Description:
20    
21    Added a hack to the existing hack known as Word64 to make fromString
22    behave correctly.  I am still not sure whether Word64.scan will work
23    as specified with respect to the interaction of radix and prefix.
24    
25    ----------------------------------------------------------------------
26    Name: Allen Leung (leunga (at) reservoir (dot) com)
27    Date: 2005/05/04 11:50:00 EST
28    Tag: leunga-20050504-checkgc
29    Description:
30    
31    Added a gc protocol checking phase.  This phase is enabled with
32    the flag "check-gc".  "debug-check-gc" turns on the verbose mode.
33    
34    ----------------------------------------------------------------------
35    Name: Matthias Blume (blume (at) tti - c (dot) org)
36    Date: 2005/05/04 10:45:00 CDT
37    Tag: blume-20050504-intinf
38    Description:
39    
40    Fixed a bug in the implementation of div and mod for IntInf.
41    Thanks to Neophytos Michael for reporting the problem.
42    
43    ----------------------------------------------------------------------
44    Name: Matthias Blume (blume (at) tti - c (dot) org)
45    Date: 2005/05/04 10:35:00 CDT
46    Tag: blume-20050504-join
47    Description:
48    
49    Added a "join" combinator to the ParserComb module in smlnj-lib.cm.
50    
51    ----------------------------------------------------------------------
52    Name: Matthias Blume (blume (at) tti - c (dot) org)
53    Date: 2005/02/28 23:40:00 CST
54    Tag: blume-20050228-mVar
55    Description:
56    
57    Fixed serious bug (brown paper bag variety) in new implementation of
58    structure Atom in CML.  (I had accidentally used a mailbox instead of
59    an mvar, leaving the door open for races.)
60    
61    ----------------------------------------------------------------------
62    Name: Matthias Blume (blume (at) tti - c (dot) org)
63    Date: 2005/02/25 15:00:00 CST
64    Tag: Release_110_53
65    Description:
66    
67    New working version (110.53).  NEW BOOTFILES!
68    
69    ----------------------------------------------------------------------
70    Name: Matthias Blume (blume (at) tti - c (dot) org)
71    Date: 2005/02/25 14:50:00 CST
72    Tag: blume-20050225-susp
73    Description:
74    
75    Brought back SMLofNJ.Susp.  The underlying suspension type is the one
76    implemented in Core -- which means that it is the same as the one used
77    by the lazy extension.
78    
79    ----------------------------------------------------------------------
80    Name: Matthias Blume (blume (at) tti - c (dot) org)
81    Date: 2005/02/24 16:50:00 CST
82    Tag: blume-20050224-cml-atom
83    Description:
84    
85    Simpler and at the same time more general implementation of structure
86    Atom in CML.
87    
88    ----------------------------------------------------------------------
89    Name: Matthias Blume (blume (at) tti - c (dot) org)
90    Date: 2005/02/15 17:35:00 CST
91    Tag: blume-20050215-tools
92    Description:
93    
94    Created new "tools" directory under "src" and moved "TraceDebugProf"
95    there.
96    
97    ----------------------------------------------------------------------
98    Name: Matthias Blume (blume (at) tti - c (dot) org)
99    Date: 2005/02/10 17:55:00 CST
100    Tag: blume-20050210-longlong
101    Description:
102    
103    Implemented "long long" arguments and results for NLFFI.  (Only the
104    PPC/MacOS implementation is complete, the other backends still need to
105    be updated.)
106    
107    ----------------------------------------------------------------------
108    Name: Matthias Blume (blume (at) tti - c (dot) org)
109    Date: 2005/01/24 17:40:00 CST
110    Tag: blume-20050124-mlyacc
111    Description:
112    
113    Minor cleanup in ML-Yacc rule printing mechanism.  This should fix a
114    problem with certain "as" patterns which previously got rendered
115    using incorrect syntax.
116    
117    ----------------------------------------------------------------------
118    Name: Matthias Blume (blume (at) tti - c (dot) org)
119    Date: 2005/01/18 12:00:00 CST
120    Tag: blume-20050118-profile
121    Description:
122    
123    Made time profiling code (interrupt handler) in runtime system aware
124    of new array representation.
125    
126    ----------------------------------------------------------------------
127    Name: Matthias Blume (blume (at) tti - c (dot) org)
128    Date: 2005/01/14 18:00:00 CST
129    Tag: blume-20050114-heap2exec
130    Description:
131    
132    Implemented new (but still experimental) heap2exec facility.  This is
133    tested under Mac OS X and should work under Linux (will test shortly).
134    It will probably also work on the Sparc (will test some time later).
135    
136      - removed old "HACKED_STANDALONE" hack from runtime
137    
138    To be able to test this, uncomment the request for "heap2asm" in
139    config/targets prior to installation.  (Notice that this is different
140    from "heap2exec" mentioned below.  Not a typo.)
141    
142    To perform an actual test, run the command
143    
144       $ bin/heap2exec heapfile execfile
145    
146    (You can put heap2exec on your shell's path.)
147    
148    For example, run
149    
150      $ bin/heap2exec bin/.heap/ml-yacc.ppc-darwin mly
151    
152    This will create a standalone executable called "mly" which you can
153    then invoke directly as a command.
154    
155    ----------------------------------------------------------------------
156    Name: Matthias Blume (blume (at) tti - c (dot) org)
157    Date: 2005/01/07 11:44:00 CST
158    Tag: blume-20050107-mlstring
159    Description:
160    
161    fixed off-by-one error in ML_STRING macro (globals.c)
162    
163    ----------------------------------------------------------------------
164    Name: Matthias Blume (blume (at) tti - c (dot) org)
165    Date: 2004/12/23 18:00:00 CST
166    Tag: blume-20041223-santa
167    Description:
168    
169    Made ml-build script "smarter" (but only very little).
170    
171    ----------------------------------------------------------------------
172    Name: Matthias Blume (blume (at) tti - c (dot) org)
173    Date: 2004/12/21 15:05:00 CST
174    Tag: blume-20041221-longlong
175    Description:
176    
177    * Implemented access to signed and unsigned long long data in NLFFI.
178    (The parameter-passing part of the picture has not complete. But
179    data structure access seems to work.)
180    
181    * Fixed CM's incorrect assumption that the PPC is little-endian.
182      (On the Mac, it is big-endian.  And that's currently our only
183      PPC platform.)
184    
185    ----------------------------------------------------------------------
186    Name: Matthias Blume (blume (at) tti - c (dot) org)
187    Date: 2004/12/21 12:50:00 CST
188    Tag: blume-20041221-memory
189    Description:
190    
191    Some cleanup in the $c/memory.cm library: separated some concerns by
192    moving allocation code and memory access code each into their own
193    files.
194    
195    ----------------------------------------------------------------------
196    Name: Allen Leung (leunga (at) reservoir (dot) com)
197    Date: 2004/12/17 16:12:00 EST
198    Tag: leunga-20041217-cygwin-smlnj-home
199    Description:
200    
201        The Unix I/O library of SML/NJ on cygwin does not understand
202    Windows style pathname, so problems arise when SMLNJ_HOME is set
203    to a Windows style pathname.  _run-sml now converts SMLNJ_HOME
204    to a POSIX pathname on cygwin.
205    
206    ----------------------------------------------------------------------
207    Name: Matthias Blume (blume (at) tti - c (dot) org)
208    Date: 2004/12/16 13:35:00 CST
209    Tag: Release_110_52
210    Description:
211    
212    Last-minute changes incorporated into 110.52.  Release tag moved.
213    
214    The changes:
215       - HashString.hashString' -> HashString.hashSubstring
216       - bug fix in UnivariateStats
217    
218    ----------------------------------------------------------------------
219    Name: Matthias Blume (blume (at) tti - c (dot) org)
220    Date: 2004/12/15 23:40:00 CST
221    Tag: blume-20041215-hashSubstring
222    Description:
223    
224    - HashString.hashString' -> HashString.hashSubstring
225    - corresponding changes in atom.sml
226    - "de-compressed" (aka. un-obfuscated) code for UnivariateStats and
227      added some comments
228    
229    ----------------------------------------------------------------------
230    Name: Matthias Blume (blume (at) tti - c (dot) org)
231    Date: 2004/12/15 15:30:00 CST
232    Tag: (Release_110_52)
233    Description:
234    
235    New working version (110.52).  NEW BOOTFILES!
236    
237    ----------------------------------------------------------------------
238    Name: Matthias Blume (blume (at) tti - c (dot) org)
239    Date: 2004/12/15 12:45:00 CST
240    Tag: blume-20041215-spaces
241    Description:
242    
243    More on the space problem (this time for Win32).
244    
245    ----------------------------------------------------------------------
246    Name: Matthias Blume (blume (at) tti - c (dot) org)
247    Date: 2004/12/14 17:30:00 CST
248    Tag: blume-20041214-spaces
249    Description:
250    
251    Hacked some of the scripts (in particular: the installer) to cope with
252    spaces in filenames a bit better.  But beware: the current "solution"
253    is likely still full of bugs and inherently incomplete.  (We need to
254    do away with those shell scripts for a comprehensive solution.)
255    
256    ----------------------------------------------------------------------
257    Name: Matthias Blume (blume (at) tti - c (dot) org)
258    Date: 2004/12/13 14:45:00 CST
259    Tag: blume-20041213-ml-makedepend
260    Description:
261    
262    Fixed bug in code for ml-makedepend.
263    
264    ----------------------------------------------------------------------
265    Name: Matthias Blume (blume (at) tti - c (dot) org)
266    Date: 2004/12/09 16:30:00 CST
267    Tag: blume-20041209-statistics
268    Description:
269    
270    Added two simple but potentially useful statistics modules to SML/NJ Library.
271    (See CHANGES file there.)
272    
273    ----------------------------------------------------------------------
274    Name: Matthias Blume (blume (at) tti - c (dot) org)
275    Date: 2004/12/01 16:50:00 CST
276    Tag: blume-20041201-atom
277    Description:
278    
279    smlnj-lib:
280    
281      Added function HashString.hashString' for substrings.
282      Hand-inlined CharVector.foldl into HashString (for speed).
283      Modified implementation of structure Atom to avoid extracting
284      strings from substrings unless necessary.
285      (Also see CHANGES file for smlnj-lib.)
286    
287    ----------------------------------------------------------------------
288    Name: Matthias Blume (blume (at) tti - c (dot) org)
289    Date: 2004/11/24 22:15:00 CST
290    Tag: blume-20041124-cml
291    Description:
292    
293    Made sure CML compiles when Position = Int64.
294    
295    ----------------------------------------------------------------------
296    Name: Matthias Blume (blume (at) tti - c (dot) org)
297    Date: 2004/11/24 14:30:00 CST
298    Tag: blume-20041124-position
299    Description:
300    
301    The compiler can now be compiled in a mode that makes structure Position
302    equal to Int64.  The default, however, is unchanged (Position = Int31)
303    for the time being.
304    
305    To enable 64-bit positions, use the following procedure:
306    
307    1. Start sml
308    2. Autoload $smlnj/cmb.cm (if not already autoloaded)
309    3. Type
310          #set (CMB.symval "USE_64_BIT_POSITIONS") (SOME 1);
311    4. Run CMB.make() as usual.
312    
313    This is barely tested.  The only test so far was a little SML program
314    counting the number of characters in an 8-gigabyte file by
315    reading it character-by-character.  That test was successful.
316    
317    In support of 64-bit positions, a number of new functions have been
318    added to the runtime system.
319    
320    ----------------------------------------------------------------------
321    Name: Matthias Blume (blume (at) tti - c (dot) org)
322    Date: 2004/11/23 14:45:00 CST
323    Tag: blume-20041123-useFile
324    Description:
325    
326    Fixed a problem with unhelpful error messages related to problems with
327    .cm- or .sml files that appear as part of the sml command line.
328    
329    ----------------------------------------------------------------------
330    Name: Matthias Blume (blume (at) tti - c (dot) org)
331    Date: 2004/11/18 15:40:00 CST
332    Tag: Release_110_51
333    Description:
334    
335    New working version (110.51).  NEW BOOTFILES!
336    
337    ----------------------------------------------------------------------
338    Name: Matthias Blume (blume (at) tti - c (dot) org)
339    Date: 2004/11/18 15:35:00 CST
340    Tag: <none>
341    Description:
342    
343    Enabled dlopen and friends for FreeBSD (as recommended by Johannes 5
344    Joemann).
345    
346    ----------------------------------------------------------------------
347    Name: Allen Leung (leunga (at) reservoir (dot) com)
348    Date: 2004/11/17 16:05:21 EST 2004
349    Tag: leunga-20041117-mlrisc-live-kill
350    Description:
351    
352       Added support for MLTree constructs LIVE and KILL
353    to all the architectures.
354    
355    ----------------------------------------------------------------------
356    Name: Matthias Blume (blume (at) tti - c (dot) org)
357    Date: 2004/11/13 00:20:00 CST
358    Tag: blume-20041113-versiontool
359    Description:
360    
361    - Stripped down the versiontool: It now only handles the version number.
362      The date string is generated at bootstrap time (during makeml).
363    
364    - In a previous commit, fixed a minor issue with how polyequal is being
365      translated.  In particular, the code now "looks through" abstractions.
366      This results in slightly fewer polyEqual warnings and hopefully slightly
367      more efficient code.  Important examples for where this matters are
368      the new int64 and word64 types.
369    
370    ----------------------------------------------------------------------
371    Name: Matthias Blume (blume (at) tti - c (dot) org)
372    Date: 2004/11/12 00:30:00 CST
373    Tag: blume-20041112-int64
374    Description:
375    
376    Structure Int64 fully hooked in.  (The implementation is not very
377    efficient, though.)
378    
379    ----------------------------------------------------------------------
380    Name: Matthias Blume (blume (at) tti - c (dot) org)
381    Date: 2004/11/11 17:30:00 CST
382    Tag: blume-20041111-more64
383    Description:
384    
385    All the pieces of Word64 are now there, with the exception of the
386    conversions from and to LargeWord. (Eventually these need to be identities,
387    but for the time being they don't even make sense because LargeWord is
388    32-bit wide.)
389    
390    Also started to add similar support for Int64, but major pieces of that
391    are still missing.
392    
393    ----------------------------------------------------------------------
394    Name: Matthias Blume (blume (at) tti - c (dot) org)
395    Date: 2004/11/11 00:15:00 CST
396    Tag: blume-20041111-word64
397    Description:
398    
399    Structure Word64 is now (almost) complete, word literals and patterns
400    seem to work.  There are a few odd pieces missing.  In particular,
401    I didn't do the {from,to}LargeWord parts because LargeWord is still Word32
402    at the moment.
403    
404    Making Word64 official would mean that LargeWord becomes Word64.  But
405    this requires extreme care because most word-word conversions have to
406    go through LargeWord, so making a mistake means loss of efficiency or
407    worse.  Eventually there will be a solution similar to (but actually
408    simpler than) what I did with IntInf.
409    
410    ----------------------------------------------------------------------
411    Name: Matthias Blume (blume (at) tti - c (dot) org)
412    Date: 2004/11/10 18:12:00 CST
413    Tag: blume-20041110-64bit
414    Description:
415    
416    More 64-bit hacking (but still not even half-way there yet).
417    Also, some assorted improvements to the handling of 8-bit words.
418    
419    ----------------------------------------------------------------------
420    Name: Matthias Blume (blume (at) tti - c (dot) org)
421    Date: 2004/11/09 17:50:00 CST
422    Tag: <none>
423    Description:
424    
425    Started adding some infrastructure for supporting 64-bit int- and
426    word-types.  (Still in its very early stages.)
427    
428    ----------------------------------------------------------------------
429    Name: Matthias Blume (blume (at) tti - c (dot) org)
430    Date: 2004/10/28 10:45:00 CDT
431    Tag: Release_110_50
432    Description:
433    
434    New working version (110.50).  NEW BOOTFILES!
435    
436                 =====================
437    
438    Also:
439    
440      - Changend config/srcarchiveurl from a file just
441        containing the URL string into a file containing
442        shell script code.  The code has access to the $VERSION variable.
443      - Made corresponding changes to config/install.sh and config/unpack.
444      - Default contents of config/srcarchiveurl uses $VERSION and
445        normally does not have to be edited to reflect a version change.
446    
447      (As a result, a version change can be done by just editing
448       config/version, the rest is now automatic.)
449    
450    ----------------------------------------------------------------------
451    Name: Matthias Blume (blume (at) tti - c (dot) org)
452    Date: 2004/10/27 17:50:00 CDT
453    Tag: blume-20041027-btrace-msg
454    Description:
455    
456    BackTrace.monitor now also reports the source of the exception that
457    triggered the trace.
458    
459    ----------------------------------------------------------------------
460    Name: Matthias Blume (blume (at) tti - c (dot) org)
461    Date: 2004/10/27 17:20:00 CDT
462    Tag: blume-20041027-x86-c-calls
463    Description:
464    
465    This is the HISTORY entry for two earlier commits, both concerning
466    the x86 c-calls code in MLRISC:
467    
468      - added a missing LOAD in the code that deals with struct arguments
469      - made sure the caller does not add the wrong number of bytes to the
470        stack pointer after a call of a function returning a struct
471        (the callee already pops the implicit argument which points to
472         the space reserved for the result)
473    
474    ----------------------------------------------------------------------
475    Name: Allen Leung (leunga (at) reservoir (dot) com)
476    Date: 2004/10/24 14:00:00 EST
477    Tag: leunga-20041024-x86-gas-fucomip
478    Description:
479    
480       John discovered a bug in the syntax of fucomip.
481       The opcodes FU?COMIP? have been changed to
482    
483           fu?comip? %st(i), %st
484    
485    ----------------------------------------------------------------------
486    Name: Matthias Blume (blume (at) tti - c (dot) org)
487    Date: 2004/10/20 15:06:00 CDT
488    Tag: blume-20041020-standalone-backtrace
489    Description:
490    
491    Added a mechanism for getting back-trace information from standalone
492    programs.  Here is how it works:
493    
494       1. The part of the program from which you want to get backtrace
495          information (usually the whole program) should be wrapped with
496          BackTrace.monitor.  This is a (unit->'a)->'a function, and your
497          main program could be modified from something like
498    
499             fun main (pgm, args) = ...
500    
501         to
502    
503            fun main (pgm, args) = BackTrace.monitor (fn () => ...)
504    
505       2. To be able to access BackTrace.monitor, you have to add
506          library $smlnj-tdp/plugins.cm to the .cm file that contains your
507          main function.
508    
509       3. Remove all compiled code (i.e., all the .cm/ subdirectories that
510          CM might have created in the past for your project).
511    
512       4. Build the system using this command line:
513    
514             ml-build -Ctdp.instrument=true \$smlnj-tdp/back-trace.cm \
515                      myprog.cm MyProg.main myprog
516    
517          instead of the usual
518    
519             ml-build myprog.cm MyProg.main myprog
520    
521    I changed a library name:
522    
523       $/trace-debug-profile.cm --> $smlnj-tdp/plugins.cm
524    
525    New libraries:
526    
527       $smlnj-tdp/back-trace.cm
528          -- when loaded causes the back-trace plugin to be installed
529       $smlnj-tdp/coverage.cm
530          -- when loaded causes the coverage plugin to be installed
531    
532    ----------------------------------------------------------------------
533    Name: Matthias Blume (blume (at) tti - c (dot) org)
534    Date: 2004/10/18 16:45:00 CDT
535    Tag: blume-20041018-groupowner
536    Description:
537    
538    Added an "obsolete" warning for the "group owner" syntax to CM's parser.
539    
540    Eliminated group owner specs from .cm files throughout the source tree.
541    
542    ----------------------------------------------------------------------
543    Name: Matthias Blume (blume (at) tti - c (dot) org)
544    Date: 2004/10/15 15:45:00 CDT
545    Tag: blume-20041015-coverage
546    Description:
547    
548    * Test coverage tool added!
549    * Further reorganization of tracing-, debugging-, and profiling support:
550    
551        - moved original BTImp -- now called BackTrace -- into a separate
552          library called $/trace-debug-profile.cm
553        - eliminated all mentions of BTrace from SMLofNJ.Internals
554        - only the instrumentation mechanism is now left in the compiler proper
555        - BackTrace module is a plugin which is NOT plugged in by default
556        - Coverage module is another such plugin
557    
558    To get the benefits of any of these plugin modules, the code in
559    question must be compiled with tdp instrumentation turned on.  This
560    can be done by setting SMLofNJ.Internals.TDP.mode to true.
561    (The ref cell is also controlled via the -Ctdp.instrument=... switch.)
562    
563    Plugins are selected at link time.  (Pre-compiled instrumented code
564    can be re-loaded with different plugins in effect.)  When an
565    instrumented module is linked, whatever plugins are at that time
566    enabled will come into effect for that module.
567    
568    To enable the back-trace plugin, load library $/trace-debug-profile.cm
569    and invoke BackTrace.install() (e.g., from the interactive prompt).
570    To enable the coverage plugin, load the same library and invoke
571    Coverage.install().
572    
573    Back-traces are generated automatically on uncaught exceptions and
574    when the code in question explicitly invokes BackTrace.trigger().
575    
576    Coverage (and execution frequency-) information must be queried
577    explicitly by calling Coverage.not_covered and Coverage.hot_spots.
578    
579    ----------------------------------------------------------------------
580    Name: Matthias Blume (blume (at) tti - c (dot) org)
581    Date: 2004/10/14 17:40:00 CDT
582    Tag: blume-20041014-tdp-core
583    Description:
584    
585    Snapshot of a significant overhaul of how the trace/debug/profile support
586    is hooked into the system (specifically: Core and SMLofNJ.Internals).
587    
588    ----------------------------------------------------------------------
589    Name: Matthias Blume (blume (at) tti - c (dot) org)
590    Date: 2004/10/13 16:34:00 CDT
591    Tag: blume-20041013-tdp
592    Description:
593    
594    Some rationalization of names:
595    
596       structure BTrace -> structure TDPInstrument
597       etc.
598    
599    This is is preparation of using the original back-trace
600    instrumentation for other purposes.  "TDP" stands for
601    Trace/Debug/Profile.
602    
603    The control flag controlling whether instrumentation is on or off is now
604    registered under a different name, so instead of running sml as
605    
606     sml -Cinstrument.btrace-mode=true
607    
608    one has to say
609    
610     sml -Ctdp.instrument=true
611    
612    ----------------------------------------------------------------------
613    Name: Matthias Blume (blume (at) tti - c (dot) org)
614    Date: 2004/10/11 16:37:00 CDT
615    Tag: blume-20041011-regions
616    Description:
617    
618    Made some minor modifications to elabcore.sml to have source regions
619    be propagated more tightly -- resulting in better (i.e., smaller)
620    regions being reported in error- and debug messages.
621    
622    ----------------------------------------------------------------------
623    Name: Matthias Blume (blume (at) tti - c (dot) org)
624  Date: 2004/10/08 22:50:00 CDT  Date: 2004/10/08 22:50:00 CDT
625  Tag: blume-20041008-cmkw  Tag: blume-20041008-cmkw
626  Description:  Description:
# Line 70  Line 677 
677  Description:  Description:
678    
679  * Moved the "version" magic into its own little library under  * Moved the "version" magic into its own little library under
680  src/system/smlnj/internal.  This avoids expensive reconstruction    src/system/smlnj/internal.  This avoids expensive reconstruction of
681  of a stable src/compiler/core.cm.    a stable src/compiler/core.cm.
682    
683  * At the same time, structure CompilerVersion is now known as structure  * At the same time, structure CompilerVersion is now known as
684  SMLNJVersion.    structure SMLNJVersion.
685    
686  * Arranged for the version tool to NOT kick in when rebuilding the system  * Arranged for the version tool to NOT kick in when rebuilding the system
687    (makeml -rebuild, fixpt).  Otherwise one would never reach a fixpoint.    (makeml -rebuild, fixpt).  Otherwise one would never reach a fixpoint.

Legend:
Removed from v.1644  
changed lines
  Added in v.1791

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