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 4098, Sat Aug 22 13:13:53 2015 UTC revision 4101, Mon Sep 21 13:11:37 2015 UTC
# Line 4015  Line 4015 
4015  +  +
4016  This is a major update which comes with a version number bump  This is a major update which comes with a version number bump
4017  (110.42.99 -- yes, we are really close to 110.43 :-), NEW BOOTFILES,  (110.42.99 -- yes, we are really close to 110.43 :-), NEW BOOTFILES,
4018  and an implementation of IntInf in the Basis.  and an implementation of +IntInf+ in the Basis.
4019  +  
4020  There are a fairly large number of related changes and updates throughout  There are a fairly large number of related changes and updates throughout
4021  the system:  the system:
4022  +  +
# Line 4028  Line 4028 
4028  +  +
4029  compiler:  compiler:
4030          * Added support for a built-in intinf type.          * Added support for a built-in intinf type.
4031            --
4032            - literals            - literals
4033            - pattern matching            - pattern matching
4034            - conversion shortcuts (Int32.fromLarge o Int.toLarge etc.)            - conversion shortcuts (+Int32.fromLarge o Int.toLarge+ etc.)
4035            - overloading on literals and operations            - overloading on literals and operations
4036  +          --
4037          This required adding a primitive type intinf, some additional          This required adding a primitive type intinf, some additional
4038          primops, and implementations for several non-trivial intinf          primops, and implementations for several non-trivial intinf
4039          operations in Core.  (The intinf type is completely abstract          operations in Core.  (The intinf type is completely abstract
# Line 4042  Line 4043 
4043          does not print its usual warning in this case (since polyequal          does not print its usual warning in this case (since polyequal
4044          is the right thing to do there).          is the right thing to do there).
4045  +  +
4046          * Improved the organization of structure InlineT.          * Improved the organization of structure +InlineT+.
4047  +  +
4048          * A word about conversion primops:          * A word about conversion primops:
4049          If conversions involving intinf do not cancel out during          If conversions involving intinf do not cancel out during
# Line 4106  Line 4107 
4107  number of changes, including fixes for several bugs that had gone  number of changes, including fixes for several bugs that had gone
4108  unnoticed until now:  unnoticed until now:
4109  +  +
4110    - uname "CYGWIN_NT*" is recognized as win32 (This is relevant only when  --
4111    * uname "CYGWIN_NT*" is recognized as win32 (This is relevant only when
4112      trying to run the win32 version from within cygwin.)      trying to run the win32 version from within cygwin.)
4113  +  
4114    - There are a number of simple .bat scripts that substitute for their  * There are a number of simple .bat scripts that substitute for their
4115      corresponding Unix shell-scripts.  (See below.)      corresponding Unix shell-scripts.  (See below.)
4116  +  
4117    - The internals of *ml-build* have been modified slightly.  The main  * The internals of *ml-build* have been modified slightly.  The main
4118      difference is that instead of calling ".link-sml" (or link-sml.bat)      difference is that instead of calling ".link-sml" (or link-sml.bat)
4119      using OS.Process.system, the ML process delegates this task back    using +OS.Process.system+, the ML process delegates this task back
4120      to the script.  Otherwise problems arise in mixed environments such      to the script.  Otherwise problems arise in mixed environments such
4121      as Cygwin where scripts look and work like Unix scripts, but      as Cygwin where scripts look and work like Unix scripts, but
4122      where OS.Process.system cannot run them.      where OS.Process.system cannot run them.
4123  +  
4124    - In CM, the srcpath pickler used native pathname syntax -- which  * In CM, the srcpath pickler used native pathname syntax -- which
4125      is incorrect in the case of cross-compilation.  The new pickle format      is incorrect in the case of cross-compilation.  The new pickle format
4126      is independent of platform-specific naming conventions.      is independent of platform-specific naming conventions.
4127  +  
4128    - Path configuration files (such as lib/pathconfig) can now choose  * Path configuration files (such as lib/pathconfig) can now choose
4129      between native and standard syntax.  Placing a line of the form      between native and standard syntax.  Placing a line of the form
4130  +  +
4131          standard!          standard!
# Line 4135  Line 4137 
4137  +  +
4138      switches back to native style.  This was needed so that      switches back to native style.  This was needed so that
4139      path config files can be written portably, see src/system/pathconfig.      path config files can be written portably, see src/system/pathconfig.
4140    
4141    * Runtime system:
4142  +  +
4143    - Runtime system:    - ++win32-filesys.c++:  +get_file_time+ and +set_file_time+ now
 +  
       - win32-filesys.c:  get_file_time and set_file_time now  
4144          access modification time, not creation time.          access modification time, not creation time.
4145  +  
4146        - I/O code made aware of new array representation.        - I/O code made aware of new array representation.
4147  +  
4148        - Bug fixes in X86.prim.masm.    - Bug fixes in +X86.prim.masm+.
4149  +  
4150     - src/system/makeml made aware of win32. (For use under cygwin    - +src/system/makeml+ made aware of win32. (For use under cygwin
4151          and other Unix-environments for windows.)          and other Unix-environments for windows.)
4152  +  
4153     - In Basis, fixed off-by-one error in win32-io.sml (function vecF)     - In Basis, fixed off-by-one error in win32-io.sml (function vecF)
4154       which caused BinIO.inputAll to fail consistently.       which caused BinIO.inputAll to fail consistently.
4155  +  
4156  .bat scripts:  * .bat scripts:
4157  +  +
4158     Windows .bat scripts assume that +SMLNJ_HOME+ is defined.     Windows .bat scripts assume that +SMLNJ_HOME+ is defined.
4159  +  +
# Line 4169  Line 4171 
4171       libraries are being installed (_i.e._, you get only those that       libraries are being installed (_i.e._, you get only those that
4172       are part of the compiler.)       are part of the compiler.)
4173     - link-sml.bat:  analogous to .link-sml, but not currently used     - link-sml.bat:  analogous to .link-sml, but not currently used
4174  +  
4175  Unrelated bug fixes:  * Unrelated bug fixes:
4176  +  
4177    - ml-nlffigen now exports structures ST_* corresponding to incomplete    - ml-nlffigen now exports structures ST_* corresponding to incomplete
4178      types.      types.
4179    - Added getDevice to PP/src/pp-debug-fn.sml.  (Would not compile    - Added getDevice to PP/src/pp-debug-fn.sml.  (Would not compile
4180      otherwise.)      otherwise.)
4181    --
4182  +  +
4183  owner:[Matthias Blume,http://www.tti-c.org/blume/]  owner:[Matthias Blume,http://www.tti-c.org/blume/]
4184    
# Line 4229  Line 4232 
4232  +  +
4233      Ported the runtime system to cygwin, which uses the unix      Ported the runtime system to cygwin, which uses the unix
4234  x86-unix bin files.  Missing/buggy features:  x86-unix bin files.  Missing/buggy features:
4235  +  --
4236     o getnetbyname, getnetbyaddr: these functions seem to be missing in     * getnetbyname, getnetbyaddr: these functions seem to be missing in
4237       the Cygwin library.       the Cygwin library.
4238     o Ctrl-C handling may be flaky.     * Ctrl-C handling may be flaky.
4239     o Windows system calls and Windows I/O are not supported.     * Windows system calls and Windows I/O are not supported.
4240  +  --
4241     A new set of binfiles is located at:     A new set of binfiles is located at:
4242  +  +
4243       http://www.dorsai.org/~leunga/boot.x86-unix.tgz  http://www.dorsai.org/~leunga/boot.x86-unix.tgz[]
4244  +  +
4245     This is only needed for bootstrapping the cygwin version of smlnj.     This is only needed for bootstrapping the cygwin version of smlnj.
4246     Other x86 versions can use the existing binfiles.     Other x86 versions can use the existing binfiles.
# Line 4247  Line 4250 
4250  //--------------------------------------------------------------------  //--------------------------------------------------------------------
4251  [2003/04/08]::  [2003/04/08]::
4252  +  +
4253    --
4254  1. Added a target 'mlrisc' to installer.  1. Added a target 'mlrisc' to installer.
4255  +  +
4256  2. Added missing elements to structure ListPair.  2. Added missing elements to structure ListPair.
4257    --
4258  +  +
4259  owner:[Matthias Blume]  owner:[Matthias Blume]
4260    
# Line 4360  Line 4365 
4365  //--------------------------------------------------------------------  //--------------------------------------------------------------------
4366  [2002/06/25]::  [2002/06/25]::
4367  +  +
4368  Fixed a bug in translation of INLMAX (and INLMIN) for the floating-point  Fixed a bug in translation of +INLMAX+ (and +INLMIN+) for the floating-point
4369  case.  (The sense of the +isNaN+ test was reversed -- which made min and  case.  (The sense of the +isNaN+ test was reversed -- which made +min+ and
4370  max always return their first argument.)  +max+ always return their first argument.)
4371  +  +
4372  owner:[Matthias Blume]  owner:[Matthias Blume]
4373    
# Line 4376  Line 4381 
4381  //--------------------------------------------------------------------  //--------------------------------------------------------------------
4382  [2002/06/10]::  [2002/06/10]::
4383  +  +
4384  I back-ported my implementation of IEEEReal.fromString from the  I back-ported my implementation of +IEEEReal.fromString+ from the
4385  idlbasis-devel branch so that we can test it.  idlbasis-devel branch so that we can test it.
4386  +  +
4387  Another small change is that ppDec tries to give more information  Another small change is that ppDec tries to give more information
# Line 4390  Line 4395 
4395  //--------------------------------------------------------------------  //--------------------------------------------------------------------
4396  [2002/05/31]::  [2002/05/31]::
4397  +  +
4398  Resurrected SMLofNJ.Internals.BTrace.mode.  (It accidentally fell by  Resurrected +SMLofNJ.Internals.BTrace.mode+.  (It accidentally fell by
4399  the wayside when I switched over to using Controls everywhere.)  the wayside when I switched over to using Controls everywhere.)
4400  +  +
4401  owner:[Matthias Blume]  owner:[Matthias Blume]
# Line 4442  Line 4447 
4447  //--------------------------------------------------------------------  //--------------------------------------------------------------------
4448  [2002/05/20]::  [2002/05/20]::
4449  +  +
4450  - Added ControlUtil structure to control-lib.cm.  - Added +ControlUtil+ structure to +control-lib.cm+.
4451  - Use it throughout.  - Use it throughout.
4452  - Used Controls facility to define MLRISC controls (as opposed to  - Used Controls facility to define *MLRISC* controls (as opposed to
4453    registering MLRISC control ref cells with Controls after the fact)    registering *MLRISC* control ref cells with Controls after the fact)
4454  - Fixed messed-up controls priorities.  - Fixed messed-up controls priorities.
4455  +  +
4456  * Removed again all the stuff from config/preloads that one wouldn't  * Removed again all the stuff from +config/preloads+ that one wouldn't
4457    be able to preload at the time the initial heap image is built.    be able to preload at the time the initial heap image is built.
4458    (Many libraries, _e.g._, CML, do not exist yet at this time.  The    (Many libraries, _e.g._, CML, do not exist yet at this time.  The
4459     only libraries that can be preloaded via config/preloads are those     only libraries that can be preloaded via config/preloads are those
# Line 4467  Line 4472 
4472  //--------------------------------------------------------------------  //--------------------------------------------------------------------
4473  [2002/05/18]::  [2002/05/18]::
4474  +  +
4475  o Made the mdl tool stuff compile and run again.  * Made the mdl tool stuff compile and run again.
4476  o I've disabled all the stuff that depends on RTL specifications; they  * I've disabled all the stuff that depends on RTL specifications; they
4477    are all badly broken anyway.    are all badly broken anyway.
4478  +  +
4479  owner:[Allen Leung]  owner:[Allen Leung]
# Line 4476  Line 4481 
4481  //--------------------------------------------------------------------  //--------------------------------------------------------------------
4482  [2002/05/17]::  [2002/05/17]::
4483  +  +
4484  1. John Reppy made several modifications to the SML/NJ library.  1. John Reppy made several modifications to the *SML/NJ Library*.
4485     In particular, there is a shiny new controls-lib.cm.     In particular, there is a shiny new controls-lib.cm.
4486  +  +
4487  2. Pushed new controls interface through compiler so that everything  2. Pushed new controls interface through compiler so that everything
4488     compiles again.     compiles again.
4489  +  +
4490  3. Added FormatComb and FORMAT_COMB to the CML version of the  3. Added +FormatComb+ and +FORMAT_COMB+ to the *CML* version of the
4491     SML/NJ library (so that CML compiles again).     *SML/NJ Library* (so that *CML* compiles again).
4492  +  +
4493  4. Modified init scripts because XXX_DEFAULT environment variables  4. Modified init scripts because XXX_DEFAULT environment variables
4494     are no longer with us.  (Boot-time initialization is now done     are no longer with us.  (Boot-time initialization is now done
# Line 4496  Line 4501 
4501  [2002/05/15]::  [2002/05/15]::
4502  +  +
4503          All pseudo-ops emitted before the first segment declaration          All pseudo-ops emitted before the first segment declaration
4504  such as TEXT, DATA, and BSS directives are assumed to be global  such as +TEXT+, +DATA+, and +BSS+ directives are assumed to be global
4505  declarations and are emitted first in the assembly file. This is  declarations and are emitted first in the assembly file. This is
4506  useful in a number of situations where one has pseudo-ops that are not  useful in a number of situations where one has pseudo-ops that are not
4507  specific to any segment, and also works around the constraint that one  specific to any segment, and also works around the constraint that one
4508  cannot have client pseudo-ops in the TEXT segment.  cannot have client pseudo-ops in the +TEXT+ segment.
4509  +  +
4510          Because no segment is associated with these declarations it is          Because no segment is associated with these declarations it is
4511  an error to allocate any space or objects before the first segment  an error to allocate any space or objects before the first segment
4512  directive and an exception will be raised. However, we cannot make  directive and an exception will be raised. However, we cannot make
4513  this check for client pseudo-ops.  this check for client pseudo-ops.
4514  +  +
4515          These top level declarations are a field in the CFG graph_info.  These top level declarations are a field in the CFG +graph_info+.
4516  In theory you can continue to add to this field after the CFG has been  In theory you can continue to add to this field after the CFG has been
4517  built -- provided you know what you are doing;-)  built -- provided you know what you are doing;-)
4518  +  +
# Line 4743  Line 4748 
4748  //--------------------------------------------------------------------  //--------------------------------------------------------------------
4749  [2002/03/23]::  [2002/03/23]::
4750  +  +
4751    --
4752    1. Changes to FLINT primops:    1. Changes to FLINT primops:
4753  +  +
4754    [source,sml]
4755    ------------
4756      (* make a call to a C-function;      (* make a call to a C-function;
4757       * The primop carries C function prototype information and specifies       * The primop carries C function prototype information and specifies
4758       * which of its (ML-) arguments are floating point. C prototype       * which of its (ML-) arguments are floating point. C prototype
# Line 4762  Line 4770 
4770      *)      *)
4771    | RAW_RECORD of {tag:bool,sz:int}    | RAW_RECORD of {tag:bool,sz:int}
4772    and ccall_type = CCALL_INT32 | CCALL_REAL64 | CCALL_ML_PTR    and ccall_type = CCALL_INT32 | CCALL_REAL64 | CCALL_ML_PTR
4773  +  ------------
4774    
4775    2.  These CPS primops are now overloaded:    2.  These CPS primops are now overloaded:
4776  +  +
4777    [source,sml]
4778    ------------
4779         rawload of {kind:numkind}         rawload of {kind:numkind}
4780         rawstore of {kind:numkind}         rawstore of {kind:numkind}
4781    ------------
4782  +  +
4783        The one argument form is:        The one argument form is:
4784  +  +
4785    [source,sml]
4786    ------------
4787           rawload {kind} address           rawload {kind} address
4788    ------------
4789  +  +
4790        The two argument form is:        The two argument form is:
4791  +  +
4792    [source,sml]
4793    ------------
4794           rawload {kind} [ml object, byte-offset]           rawload {kind} [ml object, byte-offset]
4795    ------------
4796  +  +
4797    3. RAW_CCALL/RCC now takes two extra arguments:    3. RAW_CCALL/RCC now takes two extra arguments:
4798  +  +
# Line 4794  Line 4812 
4812  +  +
4813    5. Pickler/unpicker    5. Pickler/unpicker
4814  +  +
4815       Changed to handle RAW_RECORD and newest RAW_CCALL  Changed to handle +RAW_RECORD+ and newest +RAW_CCALL+
4816  +  +
4817    6. MLRiscGen,    6. MLRiscGen,
4818  +  +
4819       a. Changed to handle the new rawload/rawstore/rawrecord operators.       a. Changed to handle the new rawload/rawstore/rawrecord operators.
4820       b. Code for handling C Calls has been moved to a new module CPSCCalls,       b. Code for handling C Calls has been moved to a new module CPSCCalls,
4821          in the file CodeGen/cpscompile/cps-c-calls.sml     in the file +CodeGen/cpscompile/cps-c-calls.sml+
4822  +  +
4823    7. Added the conditional move operator    7. Added the conditional move operator
4824  +  +
4825    [source,sml]
4826    ------------
4827           condmove of branch           condmove of branch
4828    ------------
4829  +  +
4830       to cps.  Generation of this is still buggy so it is currently       to cps.  Generation of this is still buggy so it is currently
4831       disabled.       disabled.
4832    --
4833  +  +
4834  owner:[Allen Leung]  owner:[Allen Leung]
4835    
# Line 4860  Line 4882 
4882  +  +
4883  will display clusters that are larger than the value set by the above.  will display clusters that are larger than the value set by the above.
4884  +  +
 +  
4885  owner:[Lal George]  owner:[Lal George]
4886    
4887  //--------------------------------------------------------------------  //--------------------------------------------------------------------
# Line 4881  Line 4902 
4902  //--------------------------------------------------------------------  //--------------------------------------------------------------------
4903  [2002/03/21]::  [2002/03/21]::
4904  +  +
4905    --
4906    1. Recoded the buggy parts of x86-fp.    1. Recoded the buggy parts of x86-fp.
4907  +  +
4908       a. All the block reordering code has been removed.       a. All the block reordering code has been removed.
# Line 4919  Line 4941 
4941       NOTE: the machine description stuff in the repository is still broken.       NOTE: the machine description stuff in the repository is still broken.
4942             Again, I can't put my fixes in because that involves             Again, I can't put my fixes in because that involves
4943             changes to MLTREE.             changes to MLTREE.
4944    --
4945  +  +
4946  owner:[Allen Leung]  owner:[Allen Leung]
4947    
# Line 5551  Line 5574 
5574  +  +
5575  A wild mix of changes, some minor, some major:  A wild mix of changes, some minor, some major:
5576  +  +
5577    --
5578  * All C FFI-related libraries are now anchored under $c:  * All C FFI-related libraries are now anchored under $c:
5579      $/c.cm      --> $c/c.cm      $/c.cm      --> $c/c.cm
5580      $/c-int.cm  --> $c/internals/c-int.cm      $/c-int.cm  --> $c/internals/c-int.cm
# Line 5592  Line 5616 
5616  +  +
5617  * As a result of the above, signature POINTER_TO_INCOMPLETE_TYPE has  * As a result of the above, signature POINTER_TO_INCOMPLETE_TYPE has
5618    been vastly simplified.    been vastly simplified.
5619    --
5620  +  +
5621  owner:[Matthias Blume]  owner:[Matthias Blume]
5622    

Legend:
Removed from v.4098  
changed lines
  Added in v.4101

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