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 1641, Wed Oct 6 20:18:55 2004 UTC revision 1733, Thu Dec 16 05:37:04 2004 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: 2004/12/15 23:40:00 CST
18    Tag: blume-20041215-hashSubstring
19    Description:
20    
21    - HashString.hashString' -> HashString.hashSubstring
22    - corresponding changes in atom.sml
23    - "de-compressed" (aka. un-obfuscated) code for UnivariateStats and
24      added some comments
25    
26    ----------------------------------------------------------------------
27    Name: Matthias Blume (blume (at) tti - c (dot) org)
28    Date: 2004/12/15 15:30:00 CST
29    Tag: Release_110_52
30    Description:
31    
32    New working version (110.52).  NEW BOOTFILES!
33    
34    ----------------------------------------------------------------------
35    Name: Matthias Blume (blume (at) tti - c (dot) org)
36    Date: 2004/12/15 12:45:00 CST
37    Tag: blume-20041215-spaces
38    Description:
39    
40    More on the space problem (this time for Win32).
41    
42    ----------------------------------------------------------------------
43    Name: Matthias Blume (blume (at) tti - c (dot) org)
44    Date: 2004/12/14 17:30:00 CST
45    Tag: blume-20041214-spaces
46    Description:
47    
48    Hacked some of the scripts (in particular: the installer) to cope with
49    spaces in filenames a bit better.  But beware: the current "solution"
50    is likely still full of bugs and inherently incomplete.  (We need to
51    do away with those shell scripts for a comprehensive solution.)
52    
53    ----------------------------------------------------------------------
54    Name: Matthias Blume (blume (at) tti - c (dot) org)
55    Date: 2004/12/13 14:45:00 CST
56    Tag: blume-20041213-ml-makedepend
57    Description:
58    
59    Fixed bug in code for ml-makedepend.
60    
61    ----------------------------------------------------------------------
62    Name: Matthias Blume (blume (at) tti - c (dot) org)
63    Date: 2004/12/09 16:30:00 CST
64    Tag: blume-20041209-statistics
65    Description:
66    
67    Added two simple but potentially useful statistics modules to SML/NJ Library.
68    (See CHANGES file there.)
69    
70    ----------------------------------------------------------------------
71    Name: Matthias Blume (blume (at) tti - c (dot) org)
72    Date: 2004/12/01 16:50:00 CST
73    Tag: blume-20041201-atom
74    Description:
75    
76    smlnj-lib:
77    
78      Added function HashString.hashString' for substrings.
79      Hand-inlined CharVector.foldl into HashString (for speed).
80      Modified implementation of structure Atom to avoid extracting
81      strings from substrings unless necessary.
82      (Also see CHANGES file for smlnj-lib.)
83    
84    ----------------------------------------------------------------------
85    Name: Matthias Blume (blume (at) tti - c (dot) org)
86    Date: 2004/11/24 22:15:00 CST
87    Tag: blume-20041124-cml
88    Description:
89    
90    Made sure CML compiles when Position = Int64.
91    
92    ----------------------------------------------------------------------
93    Name: Matthias Blume (blume (at) tti - c (dot) org)
94    Date: 2004/11/24 14:30:00 CST
95    Tag: blume-20041124-position
96    Description:
97    
98    The compiler can now be compiled in a mode that makes structure Position
99    equal to Int64.  The default, however, is unchanged (Position = Int31)
100    for the time being.
101    
102    To enable 64-bit positions, use the following procedure:
103    
104    1. Start sml
105    2. Autoload $smlnj/cmb.cm (if not already autoloaded)
106    3. Type
107          #set (CMB.symval "USE_64_BIT_POSITIONS") (SOME 1);
108    4. Run CMB.make() as usual.
109    
110    This is barely tested.  The only test so far was a little SML program
111    counting the number of characters in an 8-gigabyte file by
112    reading it character-by-character.  That test was successful.
113    
114    In support of 64-bit positions, a number of new functions have been
115    added to the runtime system.
116    
117    ----------------------------------------------------------------------
118    Name: Matthias Blume (blume (at) tti - c (dot) org)
119    Date: 2004/11/23 14:45:00 CST
120    Tag: blume-20041123-useFile
121    Description:
122    
123    Fixed a problem with unhelpful error messages related to problems with
124    .cm- or .sml files that appear as part of the sml command line.
125    
126    ----------------------------------------------------------------------
127    Name: Matthias Blume (blume (at) tti - c (dot) org)
128    Date: 2004/11/18 15:40:00 CST
129    Tag: Release_110_51
130    Description:
131    
132    New working version (110.51).  NEW BOOTFILES!
133    
134    ----------------------------------------------------------------------
135    Name: Matthias Blume (blume (at) tti - c (dot) org)
136    Date: 2004/11/18 15:35:00 CST
137    Tag: <none>
138    Description:
139    
140    Enabled dlopen and friends for FreeBSD (as recommended by Johannes 5
141    Joemann).
142    
143    ----------------------------------------------------------------------
144    Name: Allen Leung (leunga (at) reservoir (dot) com)
145    Date: 2004/11/17 16:05:21 EST 2004
146    Tag: leunga-20041117-mlrisc-live-kill
147    Description:
148    
149       Added support for MLTree constructs LIVE and KILL
150    to all the architectures.
151    
152    ----------------------------------------------------------------------
153    Name: Matthias Blume (blume (at) tti - c (dot) org)
154    Date: 2004/11/13 00:20:00 CST
155    Tag: blume-20041113-versiontool
156    Description:
157    
158    - Stripped down the versiontool: It now only handles the version number.
159      The date string is generated at bootstrap time (during makeml).
160    
161    - In a previous commit, fixed a minor issue with how polyequal is being
162      translated.  In particular, the code now "looks through" abstractions.
163      This results in slightly fewer polyEqual warnings and hopefully slightly
164      more efficient code.  Important examples for where this matters are
165      the new int64 and word64 types.
166    
167    ----------------------------------------------------------------------
168    Name: Matthias Blume (blume (at) tti - c (dot) org)
169    Date: 2004/11/12 00:30:00 CST
170    Tag: blume-20041112-int64
171    Description:
172    
173    Structure Int64 fully hooked in.  (The implementation is not very
174    efficient, though.)
175    
176    ----------------------------------------------------------------------
177    Name: Matthias Blume (blume (at) tti - c (dot) org)
178    Date: 2004/11/11 17:30:00 CST
179    Tag: blume-20041111-more64
180    Description:
181    
182    All the pieces of Word64 are now there, with the exception of the
183    conversions from and to LargeWord. (Eventually these need to be identities,
184    but for the time being they don't even make sense because LargeWord is
185    32-bit wide.)
186    
187    Also started to add similar support for Int64, but major pieces of that
188    are still missing.
189    
190    ----------------------------------------------------------------------
191    Name: Matthias Blume (blume (at) tti - c (dot) org)
192    Date: 2004/11/11 00:15:00 CST
193    Tag: blume-20041111-word64
194    Description:
195    
196    Structure Word64 is now (almost) complete, word literals and patterns
197    seem to work.  There are a few odd pieces missing.  In particular,
198    I didn't do the {from,to}LargeWord parts because LargeWord is still Word32
199    at the moment.
200    
201    Making Word64 official would mean that LargeWord becomes Word64.  But
202    this requires extreme care because most word-word conversions have to
203    go through LargeWord, so making a mistake means loss of efficiency or
204    worse.  Eventually there will be a solution similar to (but actually
205    simpler than) what I did with IntInf.
206    
207    ----------------------------------------------------------------------
208    Name: Matthias Blume (blume (at) tti - c (dot) org)
209    Date: 2004/11/10 18:12:00 CST
210    Tag: blume-20041110-64bit
211    Description:
212    
213    More 64-bit hacking (but still not even half-way there yet).
214    Also, some assorted improvements to the handling of 8-bit words.
215    
216    ----------------------------------------------------------------------
217    Name: Matthias Blume (blume (at) tti - c (dot) org)
218    Date: 2004/11/09 17:50:00 CST
219    Tag: <none>
220    Description:
221    
222    Started adding some infrastructure for supporting 64-bit int- and
223    word-types.  (Still in its very early stages.)
224    
225    ----------------------------------------------------------------------
226    Name: Matthias Blume (blume (at) tti - c (dot) org)
227    Date: 2004/10/28 10:45:00 CDT
228    Tag: Release_110_50
229    Description:
230    
231    New working version (110.50).  NEW BOOTFILES!
232    
233                 =====================
234    
235    Also:
236    
237      - Changend config/srcarchiveurl from a file just
238        containing the URL string into a file containing
239        shell script code.  The code has access to the $VERSION variable.
240      - Made corresponding changes to config/install.sh and config/unpack.
241      - Default contents of config/srcarchiveurl uses $VERSION and
242        normally does not have to be edited to reflect a version change.
243    
244      (As a result, a version change can be done by just editing
245       config/version, the rest is now automatic.)
246    
247    ----------------------------------------------------------------------
248    Name: Matthias Blume (blume (at) tti - c (dot) org)
249    Date: 2004/10/27 17:50:00 CDT
250    Tag: blume-20041027-btrace-msg
251    Description:
252    
253    BackTrace.monitor now also reports the source of the exception that
254    triggered the trace.
255    
256    ----------------------------------------------------------------------
257    Name: Matthias Blume (blume (at) tti - c (dot) org)
258    Date: 2004/10/27 17:20:00 CDT
259    Tag: blume-20041027-x86-c-calls
260    Description:
261    
262    This is the HISTORY entry for two earlier commits, both concerning
263    the x86 c-calls code in MLRISC:
264    
265      - added a missing LOAD in the code that deals with struct arguments
266      - made sure the caller does not add the wrong number of bytes to the
267        stack pointer after a call of a function returning a struct
268        (the callee already pops the implicit argument which points to
269         the space reserved for the result)
270    
271    ----------------------------------------------------------------------
272    Name: Allen Leung (leunga (at) reservoir (dot) com)
273    Date: 2004/10/24 14:00:00 EST
274    Tag: leunga-20041024-x86-gas-fucomip
275    Description:
276    
277       John discovered a bug in the syntax of fucomip.
278       The opcodes FU?COMIP? have been changed to
279    
280           fu?comip? %st(i), %st
281    
282    ----------------------------------------------------------------------
283    Name: Matthias Blume (blume (at) tti - c (dot) org)
284    Date: 2004/10/20 15:06:00 CDT
285    Tag: blume-20041020-standalone-backtrace
286    Description:
287    
288    Added a mechanism for getting back-trace information from standalone
289    programs.  Here is how it works:
290    
291       1. The part of the program from which you want to get backtrace
292          information (usually the whole program) should be wrapped with
293          BackTrace.monitor.  This is a (unit->'a)->'a function, and your
294          main program could be modified from something like
295    
296             fun main (pgm, args) = ...
297    
298         to
299    
300            fun main (pgm, args) = BackTrace.monitor (fn () => ...)
301    
302       2. To be able to access BackTrace.monitor, you have to add
303          library $smlnj-tdp/plugins.cm to the .cm file that contains your
304          main function.
305    
306       3. Remove all compiled code (i.e., all the .cm/ subdirectories that
307          CM might have created in the past for your project).
308    
309       4. Build the system using this command line:
310    
311             ml-build -Ctdp.instrument=true \$smlnj-tdp/back-trace.cm \
312                      myprog.cm MyProg.main myprog
313    
314          instead of the usual
315    
316             ml-build myprog.cm MyProg.main myprog
317    
318    I changed a library name:
319    
320       $/trace-debug-profile.cm --> $smlnj-tdp/plugins.cm
321    
322    New libraries:
323    
324       $smlnj-tdp/back-trace.cm
325          -- when loaded causes the back-trace plugin to be installed
326       $smlnj-tdp/coverage.cm
327          -- when loaded causes the coverage plugin to be installed
328    
329    ----------------------------------------------------------------------
330    Name: Matthias Blume (blume (at) tti - c (dot) org)
331    Date: 2004/10/18 16:45:00 CDT
332    Tag: blume-20041018-groupowner
333    Description:
334    
335    Added an "obsolete" warning for the "group owner" syntax to CM's parser.
336    
337    Eliminated group owner specs from .cm files throughout the source tree.
338    
339    ----------------------------------------------------------------------
340    Name: Matthias Blume (blume (at) tti - c (dot) org)
341    Date: 2004/10/15 15:45:00 CDT
342    Tag: blume-20041015-coverage
343    Description:
344    
345    * Test coverage tool added!
346    * Further reorganization of tracing-, debugging-, and profiling support:
347    
348        - moved original BTImp -- now called BackTrace -- into a separate
349          library called $/trace-debug-profile.cm
350        - eliminated all mentions of BTrace from SMLofNJ.Internals
351        - only the instrumentation mechanism is now left in the compiler proper
352        - BackTrace module is a plugin which is NOT plugged in by default
353        - Coverage module is another such plugin
354    
355    To get the benefits of any of these plugin modules, the code in
356    question must be compiled with tdp instrumentation turned on.  This
357    can be done by setting SMLofNJ.Internals.TDP.mode to true.
358    (The ref cell is also controlled via the -Ctdp.instrument=... switch.)
359    
360    Plugins are selected at link time.  (Pre-compiled instrumented code
361    can be re-loaded with different plugins in effect.)  When an
362    instrumented module is linked, whatever plugins are at that time
363    enabled will come into effect for that module.
364    
365    To enable the back-trace plugin, load library $/trace-debug-profile.cm
366    and invoke BackTrace.install() (e.g., from the interactive prompt).
367    To enable the coverage plugin, load the same library and invoke
368    Coverage.install().
369    
370    Back-traces are generated automatically on uncaught exceptions and
371    when the code in question explicitly invokes BackTrace.trigger().
372    
373    Coverage (and execution frequency-) information must be queried
374    explicitly by calling Coverage.not_covered and Coverage.hot_spots.
375    
376    ----------------------------------------------------------------------
377    Name: Matthias Blume (blume (at) tti - c (dot) org)
378    Date: 2004/10/14 17:40:00 CDT
379    Tag: blume-20041014-tdp-core
380    Description:
381    
382    Snapshot of a significant overhaul of how the trace/debug/profile support
383    is hooked into the system (specifically: Core and SMLofNJ.Internals).
384    
385    ----------------------------------------------------------------------
386    Name: Matthias Blume (blume (at) tti - c (dot) org)
387    Date: 2004/10/13 16:34:00 CDT
388    Tag: blume-20041013-tdp
389    Description:
390    
391    Some rationalization of names:
392    
393       structure BTrace -> structure TDPInstrument
394       etc.
395    
396    This is is preparation of using the original back-trace
397    instrumentation for other purposes.  "TDP" stands for
398    Trace/Debug/Profile.
399    
400    The control flag controlling whether instrumentation is on or off is now
401    registered under a different name, so instead of running sml as
402    
403     sml -Cinstrument.btrace-mode=true
404    
405    one has to say
406    
407     sml -Ctdp.instrument=true
408    
409    ----------------------------------------------------------------------
410    Name: Matthias Blume (blume (at) tti - c (dot) org)
411    Date: 2004/10/11 16:37:00 CDT
412    Tag: blume-20041011-regions
413    Description:
414    
415    Made some minor modifications to elabcore.sml to have source regions
416    be propagated more tightly -- resulting in better (i.e., smaller)
417    regions being reported in error- and debug messages.
418    
419    ----------------------------------------------------------------------
420    Name: Matthias Blume (blume (at) tti - c (dot) org)
421    Date: 2004/10/08 22:50:00 CDT
422    Tag: blume-20041008-cmkw
423    Description:
424    
425    Fixed handling of keywords in .cm files: After seeing "is" the lexer
426    treats subsequent occurrences of "group", "library", "source", "is",
427    "*", and "-" as ordinary identifiers rather than keywords.
428    
429    Most seriously, this fixes a problem with CM's "shell" tool.  The tool
430    is supposed to accept a tool argument called "source", but this did
431    not work because of the clash with the keyword.
432    
433    ----------------------------------------------------------------------
434    Name: Matthias Blume (blume (at) tti - c (dot) org)
435    Date: 2004/10/07 16:00:00 CDT
436    Tag: blume-20041007-cleanup
437    Description:
438    
439    Assorted cleanup work:
440    
441      - got rid of intstrmap in favor of using the library's
442        hash table implementation
443      - threw out most of the pathnames stuff, as it was not used anyway
444      - simplified tokentable implementation
445      - fixed some minor spelling errors
446    
447    ----------------------------------------------------------------------
448    Name: Matthias Blume (blume (at) tti - c (dot) org)
449  Date: 2004/10/06 15:15:15 CDT  Date: 2004/10/06 15:15:15 CDT
450  Tag: blume-20041006-handler  Tag: blume-20041006-handler
451  Description:  Description:
# Line 42  Line 474 
474  Description:  Description:
475    
476  * Moved the "version" magic into its own little library under  * Moved the "version" magic into its own little library under
477  src/system/smlnj/internal.  This avoids expensive reconstruction    src/system/smlnj/internal.  This avoids expensive reconstruction of
478  of a stable src/compiler/core.cm.    a stable src/compiler/core.cm.
479    
480  * At the same time, structure CompilerVersion is now known as structure  * At the same time, structure CompilerVersion is now known as
481  SMLNJVersion.    structure SMLNJVersion.
482    
483  * 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
484    (makeml -rebuild, fixpt).  Otherwise one would never reach a fixpoint.    (makeml -rebuild, fixpt).  Otherwise one would never reach a fixpoint.

Legend:
Removed from v.1641  
changed lines
  Added in v.1733

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