Re: [MLton] MLton 20180207 release
Matthew Fluet <[email protected]> Wed, 7 Feb 2018 14:50:01 -0500
| Newsgroups | gmane.comp.lang.ml.mlton.devel |
|---|---|
| Message-ID | <CAMrhFL6yMWARYh_z1k+dMqeYikTF=XsvLVzfXdzCJxOk9n_bfA__8607.31515936113$1518032915$gmane$org@mail.gmail.com> |
I'm hoping that others more familiar with the Debian/Ubuntu packaging can push it through. On Wed, Feb 7, 2018 at 11:39 AM, Henry Cejtin <[email protected]> wrote: > Wow, this is great. Is there any chance of getting a Debian package into > the debian world? I see that the ones there are all from the > 2013-07-15 version of > MLton. > > Thanks a million > > On Wed, Feb 7, 2018 at 9:58 AM, Matthew Fluet <[email protected]> wrote: >> I'm pleased to announce a new release of MLton, the whole-program >> optimizing compiler for Standard ML, available at >> http://mlton.org/Release20180207 (and >> https://github.com/MLton/mlton/releases/tag/on-20180207-release). >> >> * Compiler. >> * Added an experimental LLVM codegen (`-codegen llvm`); requires >> LLVM tools (`llvm-as`, `opt`, `llc`) version ≥ 3.7. >> * Made many substantial cosmetic improvements to front-end >> diagnostic messages, especially with respect to source location >> regions, type inference for `fun` and `val rec` declarations, >> signature constraints applied to a structure, `sharing type` >> specifications and `where type` signature expressions, type >> constructor or type variable escaping scope, and nonexhaustive pattern >> matching. >> * Fixed minor bugs with exception replication, precedence parsing of >> function clauses, and simultaneous `sharing` of multiple structures. >> * Made compilation deterministic (eliminate output executable name >> from compile-time specified `@MLton` runtime arguments; >> deterministically generate magic constant for executable). >> * Updated `-show-basis` (recursively expand structures in >> environments, displaying components with long identifiers; append `(* >> @ region *)` annotations to items shown in environment). >> * Forced amd64 codegen to generate PIC on amd64-linux targets. >> * Runtime. >> * Added `gc-summary-file file` runtime option. >> * Reorganized runtime support for `IntInf` operations so that >> programs that do not use `IntInf` compile to executables with no >> residual dependency on GMP. >> * Changed heap representation to store forwarding pointer for an >> object in the object header (rather than in the object data and >> setting the header to a sentinel value). >> * Language. >> * Added support for selected SuccessorML features; see >> http://mlton.org/SuccessorML for details. >> * Added `(*#showBasis "file" *)` directive; see >> http://mlton.org/ShowBasisDirective for details. >> * FFI: >> * Added `pure`, `impure`, and `reentrant` attributes to `_import`. >> An unattributed `_import` is treated as `impure`. A `pure` `_import` >> may be subject to more aggressive optimizations (common subexpression >> elimination, dead-code elimination). An `_import`-ed C function that >> (directly or indirectly) calls an `_export`-ed SML function should be >> attributed `reentrant`. >> * ML Basis annotations. >> * Added `allowSuccessorML {false|true}` to enable all SuccessorML >> features and other annotations to enable specific SuccessorML >> features; see http://mlton.org/SuccessorML for details. >> * Split `nonexhaustiveMatch {warn|error|igore}` and >> `redundantMatch {warn|error|ignore}` into `nonexhaustiveMatch` and >> `redundantMatch` (controls diagnostics for `case` expressions, `fn` >> expressions, and `fun` declarations (which may raise `Match` on >> failure)) and `nonexhaustiveBind` and `redundantBind` (controls >> diagnostics for `val` declarations (which may raise `Bind` on >> failure)). >> * Added `valrecConstr {warn|error|ignore}` to report when a `val >> rec` (or `fun`) declaration redefines an identifier that previously >> had constructor status. >> * Libraries. >> * Basis Library. >> * Improved performance of `Array.copy`, `Array.copyVec`, >> `Vector.append`, `String.^`, `String.concat`, `String.concatWith`, and >> other related functions by using `memmove` rather than >> element-by-element constructions. >> * `Unsafe` structure. >> * Added unsafe operations for array uninitialization and raw >> arrays; see https://github.com/MLton/mlton/pull/207 for details. >> * Other libraries. >> * Updated: ckit library, MLLPT library, MLRISC library, SML/NJ library >> * Tools. >> * mlnlffigen >> * Updated to warn and skip (rather than abort) when encountering >> functions with `struct`/`union` argument or return type. >> * Changelog: https://github.com/MLton/mlton/blob/on-20180207-release/CHANGELOG.adoc >> >> >> Binary packages for amd64-darwin and amd64-linux are currently >> available from the release page (and are the platforms tested). >> Additional binary packages will be made available as they are >> contributed by users. We'd like to encourage downstream maintainers >> for the various Linux and *BSD distributions to update to the new >> release. >> >> ------------------------------------------------------------------------------ >> Check out the vibrant tech community on one of the world's most >> engaging tech sites, Slashdot.org! http://sdm.link/slashdot >> _______________________________________________ >> MLton-devel mailing list >> [email protected]; [email protected] >> https://lists.sourceforge.net/lists/listinfo/mlton-devel > > ------------------------------------------------------------------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > _______________________________________________ > MLton-devel mailing list > [email protected]; [email protected] > https://lists.sourceforge.net/lists/listinfo/mlton-devel ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot