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

SCM Repository

[smlnj] View of /pages/trunk/dist/working/110.63.2/110.63.2-README.html
ViewVC logotype

View of /pages/trunk/dist/working/110.63.2/110.63.2-README.html

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2604 - (download) (as text) (annotate)
Wed May 23 22:12:17 2007 UTC (14 years, 5 months ago) by dbm
File size: 5299 byte(s)
adding 110.63.2
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html> <head>
<title><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>SML/NJ 110.63.2 NEWS</title>
</head>

<body>
<div align="center">
<big><b>
                       Standard ML of New Jersey
<br/>
                         Version 110.63.2 NEWS
<br/>
                              May 23, 2007
<br/>
<br/>
                                WARNING
</b><br/>
        This working version is believed to be stable, and 
        has passed the regression test suite. However, there is
        quite a bit of new code in the FLINT middle end and 
        at the interface between the Front End and FLINT, so
        this is not considered a mature working release. We anticipate
        that Version 110.64 will follow shortly, after further
        testing and debugging.
</big>
</div>
<p>
<hr>

<dl>
  <dt>SML/NJ HOME:</dt>
  <dd><a href="http://www.smlnj.org/index.html"><tt>http://www.smlnj.org/index.html</tt></a></dd>
  <dt>FILES:</dt>
  <dd><a href="http://smlnj.cs.uchicago.edu/dist/working/110.63.1/index.html">
<tt>http://smlnj.cs.uchicago.edu/dist/working/110.63.1/</tt></a></dd>
</dl>

<hr>

<h3>Summary:</h3>

This release contains new code from the second merge from the
primop-branch-3 development branch. Many of the changes affect
FLINT and its interaction with the front end, and particularly
the system for supporting primops (primitive operations). Additional
bugs have been fixed since 110.63.1, and ml-lpt and AMD64 support
have been updated.
 
<h3>Details:</h3>

<dl>

  <dt>Front End and FLINT:</dt>
  <dd>
    <ul>
      <li>
	Implemented a new scheme for defining primops and tracking
        and analyzing their types in the type checker and in FLINT.
        Improved the way that the type checker captures type
        information used by the translate phase to calculate 
        FLINT types.
      </li>
      <li>
        Improved signature printing by making it faithfully reflect
        the original order of specifications or (for inferred
        signatures) definitions.
      </li>
      <li>
        First phase of streamlining the type system of the plambda and flint
        intermediate languages.
      </li>
      <li>
        Fixed some bugs in the type checker and module system, and at
        least one FLINT bug.
    </ul>
  </dd>

  <dt>SML Basis library:</dt>
  <dd>
    <ul>
      <li>
	Fixed a bug in the Date module.
      </li>
    </ul>
  </dd>

  <dt>CM:</dt>
  <dd>
    <ul>
<li>
Added a boolean control named cm.tolerate-tool-failures (env. variable
name: CM_TOLERATE_TOOL_FAILURES).  The default is false and makes
CM fail if a shell tool reports a non-success exit status.  If
the control is set to true, then CM will press on after tool failures
in the event that the target files exist (even though they are
considered outdated).  Turning the control to true can be useful for
bootstrapping.
</li>
<li>
Changed the installation mechanism for CM tool plugins.  These are
just libaries and now get installed like ordinary libaries.

There are now a number of new installation targets that give some
fine-grain control over what classes and suffixes are known, and what
they will map to.
See config/targets for details.

The code that caused plugin installation as part of running a
tool's "build" script has been removed.  (The build script is for
building, not for installing.)
</li>
    </ul>
  </dd>

  <dt>ml-lpt:</dt>
  <dd>
    <ul>
<li>
Merge of ml-lpt revisions for 110.64.
<p>
The name of several ml-lpt-lib modules has changed:
<pre>
  Repair	=> AntlrRepair
  StreamPos	=> AntlrStreamPos
  ErrHandlerFn	=> AntlrErrHandler
  EBNF		=> AntlrEBNF
</pre>
The ml-antlr specification format has changed: declarations such as
%tokens and nonterminal definitions can occur *multiple* times in the
same specification.  The semantics are such that each new declaration
extends the previous ones.  This does not apply to %start or %name,
of course.
<p>
Importing a grammar via %import now includes *all* declarations in from
the imported grammar, except for %name, %entry, and %start.  Tokens
and nonterminals can be dropped using the new %dropping clause of the
%import directive; the separate %drop and %extend have been removed.
<p>
We now allow optional type annotations on nonterminals, using the %nonterms
directive as in ml-yacc.
<p>
The refcell construct is now implemented using SML's regular reference
cells, so the :== and !! notation has been deprecated.
<p>
The ml-antlr tool now does much more checking of specifications, and 
its error messages have been greatly improved.  Error repair for
generated parsers has been completely rewritten, and is now both
much faster and more accurate.
<p>
ml-ulex is now more lenient with escape codes (non-SML-standard
escape codes are now interpreted literally, so e.g. \| denotes "|").
Also, character classes may now include a "-" character at the beginning
as is standard in most other regexp tools.

All of these changes are documented in the user guide, which has 
been updated and improved with this merge.

</li>
    </ul>
  </dd>

  <dt>Regression Tests:</dt>
  <dd>
    <ul>
      <li>
	Further improvements and updates to the regression tests.
      </li>
    </ul>
  </dd>

</dl>

</body>
</html>

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