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 /doc/trunk/src/changelog/HISTORY.txt
ViewVC logotype

Diff of /doc/trunk/src/changelog/HISTORY.txt

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

revision 4317, Fri Sep 16 04:44:29 2016 UTC revision 4461, Sun Oct 1 22:04:30 2017 UTC
# Line 91  Line 91 
91  // == Recent updates  // == Recent updates
92    
93  //--------------------------------------------------------------------  //--------------------------------------------------------------------
94    [2017/10/01]::
95    +
96    Fixed unnumbered bug in ++IntInf.mod++ and ++IntInf.rem++ functions,
97    where the ++Div++ exception was *not* getting raised when both
98    arguments are ++0++.
99    +
100    owner:[John Reppy,http://cs.uchicago.edu/~jhr]
101    
102    //--------------------------------------------------------------------
103    [2017/09/18]::
104    +
105    Removed FLINT primops (and their CPS counterparts) that are not
106    in the +InlineT+ structure and, thus, are never used by the compiler.
107    +
108    owner:[John Reppy,http://cs.uchicago.edu/~jhr]
109    
110    //--------------------------------------------------------------------
111    [2017/09/18]::
112    +
113    Fixed bug bugref:[123] (missing nonexhaustive bind warning). The +mkVBs+
114    function in +FLINT/trans/translate.sml++ was adding a redundant default
115    rule by calling ++ElabUtil.completeMatch++ after a default rule had
116    already been explicitly added to the match for let bindings.
117    +
118    owner:[David MacQueen,http://cs.uchicago.edu/~dbm]
119    
120    //--------------------------------------------------------------------
121    [2017/09/18]::
122    +
123    Fixed bug bugref:[183] (status code returned by sml REPL).  This fix
124    restores the version 110.79 behavior of having +sml foo.sml+ exit with
125    a non-zero status when there is a type-checking error in ++foo.sml++.
126    It also cleans up the error messages associated with +use+ when there
127    is a syntax error.
128    +
129    owner:[John Reppy,http://cs.uchicago.edu/~jhr]
130    
131    //--------------------------------------------------------------------
132    [2017/08/28]::
133    +
134    Fixed bug bugref:[185] (Bring command line help text into parity with man page).
135    Added missing options (++@SMLversion++ and ++@SMLsuffix++) to the
136    help message that is printed for the command "++sml -h++".  Also
137    adjusted the order of options in the help message, and in the man
138    page, so that the orders match.
139    +
140    owner:[John Reppy,http://cs.uchicago.edu/~jhr]
141    
142    //--------------------------------------------------------------------
143    [2017/08/12]::
144    +
145    Changed the way that we test for allocation-space addresses in minor GCs.
146    Instead of using the BIBOP, we now do a pointer range test.  On 32-bit
147    systems, this change results in a small (~0.13%) performance boost, but
148    we expect a bigger impact on 64-bit hardware, where the cost of BIBOP
149    probes will be higher and there are more registers available to hold
150    the nursery bounds.
151    +
152    owner:[John Reppy,http://cs.uchicago.edu/~jhr]
153    
154    //--------------------------------------------------------------------
155    [2017/08/12]::
156    +
157    Fixed some issues in build-literals.c.  These were mostly false
158    positives in the assertions, but there was also a bug in the way
159    that the available space was tracked that could conceivably
160    result in a crash (but was very unlikely).
161    +
162    owner:[John Reppy,http://cs.uchicago.edu/~jhr]
163    
164    //--------------------------------------------------------------------
165    [2017/06/07]::
166    +
167    Updated _arch-n-os script to recognize macOS 10.13 (High Sierra)
168    as a valid target.
169    +
170    owner:[John Reppy,http://cs.uchicago.edu/~jhr]
171    
172    //--------------------------------------------------------------------
173    [2017/05/17]::
174    +
175    Fixed a bug in the way that JSON string values were being printed.
176    The code previously assumed that C-style esaping will work, but
177    that is not true for "\'" (as well as for control and non-ASCII
178    characters).  The new implementation assumes that the string value
179    is UTF-8 and uses the "\\u" escape sequences for characters outside
180    the JSON escapes and printable ASCII characters.
181    +
182    owner:[John Reppy,http://cs.uchicago.edu/~jhr]
183    
184    //====================================================================
185    == Version 110.81; 2017/05/01
186    
187    //--------------------------------------------------------------------
188    [2017/04/28]::
189    +
190    Fixed bug bugref:[129] (Symbolic identifiers are allowed as strids).
191    +
192    owner:[Dave MacQueen,http://cs.uchicago.edu/~dbm]
193    
194    //--------------------------------------------------------------------
195    [2017/04/07]::
196    +
197    Fixed bug bugref:[179] (ml-ulex writing debug messages to stdOut).
198    Both **ml-ulex** and **ml-antlr** now direct their debug and status messages
199    to ++stdErr++ (instead of ++stdOut++).
200    +
201    owner:[John Reppy,http://cs.uchicago.edu/~jhr]
202    
203    //--------------------------------------------------------------------
204    [2017/02/09]::
205    +
206    Linux distributions are starting to require that the stack be marked
207    as non-executable in applications.  Because the runtime system includes
208    assembly code, this marking was not happening.  We've added ++.section++
209    directives to the ++PPC.prim.asm++ and ++X86.prim.asm++ files as
210    per https://wiki.gentoo.org/wiki/Hardened/GNU_stack_quickstart#Patching[].
211    Thanks to Daniel Moerner for reporting this issue and for providing
212    a pointer to the fix.
213    +
214    owner:[John Reppy,http://cs.uchicago.edu/~jhr]
215    
216    //--------------------------------------------------------------------
217    [2016/10/15]::
218    +
219    Added ++--debug++ command-line option to *ml-antlr*.
220    This flag causes <b>ml-antlr</b> to generate debug actions that print
221    the left-hand-side non-terminal of the production.
222    +
223    owner:[John Reppy,http://cs.uchicago.edu/~jhr]
224    
225    //--------------------------------------------------------------------
226  [2016/09/15]::  [2016/09/15]::
227  +  +
228  Working on 64-bit support.  Changes include making code generation  Working on 64-bit support.  Changes include making code generation
# Line 104  Line 236 
236  +  +
237  Further cleanup of the separation of FLINT from the front-end.  Further cleanup of the separation of FLINT from the front-end.
238  Eliminated all references to +ModulePropLists+ (+module-plists.sml+) in  Eliminated all references to +ModulePropLists+ (+module-plists.sml+) in
239  the front end and pickling, and moved module-plists from  the front end and in pickling, and moved ++module-plists++ from
240  Semant/modules to FLINT/trans.  +ModulePropLists+ is now only used  ++Semant/modules++ to ++FLINT/trans++.  +ModulePropLists+ is now only used
241  in +FLINT/trans/translate.sml+.  in +FLINT/trans/translate.sml+.
242  +  +
243  Revision: 4314  Revision: 4314
# Line 113  Line 245 
245  Files changed:  Files changed:
246  +  +
247  --  --
248  - compiler/ElabData/modules/modules.sml  (cleaned up)  - +compiler/ElabData/modules/modules.sml+  (cleaned up)
249  - compiler/Elaborator/print/ppmod.sml (cleaned up)  - +compiler/Elaborator/print/ppmod.sml+ (cleaned up)
250  - compiler/FLINT/trans/module-plists.sml (moved from Semant/modules)  - +compiler/FLINT/trans/module-plists.sml+ (moved from +Semant/modules+)
251  - compiler/Semant/modules/instantiate-param.sml (deleted)  - +compiler/Semant/modules/instantiate-param.sml+ (deleted)
252  - compiler/Semant/pickle/pickmod.sml (no longer mentions property lists)  - +compiler/Semant/pickle/pickmod.sml+ (no longer mentions property lists)
253  - compiler/Semant/pickle/unpickmod.sml (ditto)  - +compiler/Semant/pickle/unpickmod.sml+ (ditto)
254  - compiler/Semant/statenv/prim.sml  - +compiler/Semant/statenv/prim.sml+
255  - compiler/Semant/types/tp-var-info.sml  (deleted)  - +compiler/Semant/types/tp-var-info.sml+  (deleted)
256  - compiler/core.cm  (modified for move of module-plists.sml)  - +compiler/core.cm+  (modified for move of +module-plists.sml+)
257  --  --
258  +  +
259  owner:[Dave MacQueen,http://cs.uchicago.edu/~dbm]  owner:[Dave MacQueen,http://cs.uchicago.edu/~dbm]
# Line 129  Line 261 
261  //--------------------------------------------------------------------  //--------------------------------------------------------------------
262  [2016/09/14]::  [2016/09/14]::
263  +  +
264  Eliminated dependency of PlambdaType from the front end by adding a  Eliminated dependency of ++PlambdaType++ from the front end by adding a
265  type TKind.tkind which is a simplified standin for PlambdaType.tkind  type ++TKind.tkind++ which is a simplified standin for ++PlambdaType.tkind++
266  for use during elaboration. TKind.tkind values are translated on  for use during elaboration. ++TKind.tkind++ values are translated on
267  demand to PlambdaType.tkind in trans/transtypes.sml. Types still has  demand to ++PlambdaType.tkind++ in ++trans/transtypes.sml++. Types still has
268  a tycpath type but it is defined using TKind.tkind now. New structure  a ++tycpath++ type but it is defined using ++TKind.tkind++ now. The new structure
269  SigPropList replaces ModulePropLists  ++SigPropList++ replaces ++ModulePropLists++
270  (Semant/modules/module-plists.sml) for use in instantiate.sml.  (++Semant/modules/module-plists.sml++) for use in ++instantiate.sml++.
271  Instantiate is build directly as a structure so the functor  ++Instantiate++ is now defined directly as a structure so the functor
272  application in Semant/modules/instantiate.sml no longer exists.  application in ++Semant/modules/instantiate.sml++ no longer exists.
273  +  +
274  Files changed:  Files changed:
275  +  +
276  --  --
277  - ElabData/basics/debindex.sig  (moved here from Elaborator/basics)  - +ElabData/basics/debindex.sig+  (moved here from +Elaborator/basics+)
278  - ElabData/basics/debindex.sml  (ditto)  - +ElabData/basics/debindex.sml+  (ditto)
279  - ElabData/basics/sig-plist.sml (new)  - +ElabData/basics/sig-plist.sml+ (new)
280  - ElabData/basics/tkind.sml     (new)  - +ElabData/basics/tkind.sml+     (new)
281  - ElabData/types/types.sig  - +ElabData/types/types.sig+
282  - ElabData/types/types.sml  - +ElabData/types/types.sml+
283  - Elaborator/modules/instantiate.sml  - +Elaborator/modules/instantiate.sml+
284  - Elaborator/print/ppmod.sml  - +Elaborator/print/ppmod.sml+
285  - FLINT/trans/transtkind.sml    (new)  - +FLINT/trans/transtkind.sml+    (new)
286  - FLINT/trans/transtypes.sml  - +FLINT/trans/transtypes.sml+
287  - TopLevel/interact/evalloop.sml  - +TopLevel/interact/evalloop.sml+
288  - ElabData/elabdata.cm  - +ElabData/elabdata.cm+
289  - Elaborator/elaborate.cm  - +Elaborator/elaborate.cm+
290  - core.cm  - +core.cm+
291  --  --
292  +  +
293  owner:[Dave MacQueen,http://cs.uchicago.edu/~dbm]  owner:[Dave MacQueen,http://cs.uchicago.edu/~dbm]
# Line 164  Line 296 
296  [2016/09/14]::  [2016/09/14]::
297  +  +
298  Added support for Successor ML record-expression-punning syntax.  For  Added support for Successor ML record-expression-punning syntax.  For
299  example, one can now write  example, one can now define a function ++f++ as
300  ```sml  +
301    [source,sml]
302    ----------------
303  fun f x = {x}  fun f x = {x}
304  ```  ----------------
305  which defines a function with type `'a -> {x:'a}`.  +
306    which is equivalent to the definition
307    +
308    [source,sml]
309    ----------------
310    fun f x = {x = x}
311    ----------------
312  +  +
313  owner:[John Reppy,http://cs.uchicago.edu/~jhr]  owner:[John Reppy,http://cs.uchicago.edu/~jhr]
314    
# Line 211  Line 351 
351  Files changed:  Files changed:
352  +  +
353  --  --
354  - compiler/ElabData/types/types.sig  - +compiler/ElabData/types/types.sig+
355  - compiler/ElabData/types/types.sml  - +compiler/ElabData/types/types.sml+
356  - compiler/ElabData/types/typesutil.sml  - +compiler/ElabData/types/typesutil.sml+
357  - compiler/ElabData/types/core-basictypes.sml  - +compiler/ElabData/types/core-basictypes.sml+
358  - compiler/Elaborator/types/basictypes.sml  - +compiler/Elaborator/types/basictypes.sml+
359  - compiler/Elaborator/types/eqtypes.sml  - +compiler/Elaborator/types/eqtypes.sml+
360  - compiler/Elaborator/modules/evalent.sml  - +compiler/Elaborator/modules/evalent.sml+
361  - compiler/Elaborator/modules/sigmatch.sml  - +compiler/Elaborator/modules/sigmatch.sml+
362  - compiler/Elaborator/modules/instantiate.sml  - +compiler/Elaborator/modules/instantiate.sml+
363  - compiler/Elaborator/print/ppabsyn.sml  - +compiler/Elaborator/print/ppabsyn.sml+
364  - compiler/Elaborator/print/pptype.sml  - +compiler/Elaborator/print/pptype.sml+
365  - compiler/Elaborator/elaborate/elabcore.sml  - +compiler/Elaborator/elaborate/elabcore.sml+
366  - compiler/Elaborator/elaborate/elabmod.sml  - +compiler/Elaborator/elaborate/elabmod.sml+
367  - compiler/Elaborator/elaborate/elabtype.sml  - +compiler/Elaborator/elaborate/elabtype.sml+
368  - compiler/Elaborator/elaborate/elabsig.sml  - +compiler/Elaborator/elaborate/elabsig.sml+
369  - compiler/Semant/pickle/pickmod.sml  - +compiler/Semant/pickle/pickmod.sml+
370  - compiler/Semant/pickle/unpickmod.sml  - +compiler/Semant/pickle/unpickmod.sml+
371  - compiler/MiscUtil/print/ppobj.sml  - +compiler/MiscUtil/print/ppobj.sml+
372  - compiler/FLINT/trans/transtypes.sml  - +compiler/FLINT/trans/transtypes.sml+
373  - compiler/FLINT/trans/pequal.sml  - +compiler/FLINT/trans/pequal.sml+
374  --  --
375  +  +
376  owner:[Dave MacQueen,http://cs.uchicago.edu/~dbm]  owner:[Dave MacQueen,http://cs.uchicago.edu/~dbm]
377    
378    //--------------------------------------------------------------------
379    [2016/08/31]::
380    +
381    Added +%tokentype+ directive to *ml-antlr*; this directive allows users
382    to specify the token datatype externally, which is necessary in order
383    to share a lexer with two different *ml-antlr* parsers.
384    +
385    owner:[John Reppy,http://cs.uchicago.edu/~jhr]
386    
387    //--------------------------------------------------------------------
388    [2016/08/20]::
389    +
390    Change the interface to +AMD64Gen+ in *MLRISC*; the +signBit+ and
391    ++negateSignBit++ callbacks now return an +MLTree.rexp+ (instead of a
392    label).
393    +
394    owner:[John Reppy,http://cs.uchicago.edu/~jhr]
395    
396  //====================================================================  //====================================================================
397  == Version 110.80; 2016/08/19  == Version 110.80; 2016/08/19
398    

Legend:
Removed from v.4317  
changed lines
  Added in v.4461

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