/usr/lib/mlton/sml/smlnj-lib/PORTING is in mlton-basis 20130715-3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 | Here is a brief description of the changes since the 0.3beta release of
the SML/NJ library in 1994. Modules are listed in alphabetical order.
--------------------------------------------------------------------
Summary
-------
- eliminate weak types in signatures.
- name changes to track SML Basis conventions.
- change names, argument order of iteration combinators
- use MONO_XXX/XXX instead of XXX/POLY_XXX for signatures.
- consolidate signatures
- e.g., use ORD_MAP for the Int*Map structures.
- Name structure is renamed Atom.
- removed name_tbl type and operations and define free-standing
structures AtomBinaryMap, AtomBinarySet and AtomTable.
- split Format structure into Format and Scan
- moved Unix specific modules to Unix library (use unix-lib.cm
in sources file to access).
- remove signatures and structures that are redundant with the
SML Basis Library.
--------------------------------------------------------------------
Detailed Changes
----------------
functor ArrayQSort (...) : ARRAY_SORT
==> ArrayQSortFn (...) : MONO_ARRAY_SORT
structure BigInt : BIGINT
==> IntInf : INT_INF
The IntInf structure mostly matches that defined by SML'97.
functor BinaryDict(...) : DICT
==> BinaryMapFn(...) : ORD_MAP
functor BinarySet(...)
==> BinarySetFn(...)
structure CType : CTYPE
Deleted. Use operations from Char structure in basis.
signature DICT
==> ORD_MAP
Also, various function names changed to track the SML'97 naming
conventions:
val find : ...
Deleted.
val peek : ...
==> find : ...
val listItems : ...
==> listItemsi : ...
val app : ...
==> appi : ...
val revapp : ...
Deleted.
val map : ...
==> mapi : ...
val fold : ...
==> foldr
val revfold : ...
==> foldl
val transform : ...
==> map : ...
Also, the ORD_MAP interface provides the following new operations:
insert', listItems, collate, unionWith, unionWithi, intersectWith,
intersectWithi, app, foldl, foldr, filter, filteri, mapPartial,
and mapPartiali.
structure Finalizer : FINALIZER
Deleted. No replacement as of yet.
structure Format : FORMAT
The scanning functions were moved to a new module (Scan : SCAN).
Also, the fmt_item datatype has changed.
functor HashTable (...) : HASH_TABLE
==> HashTableFn (...) : MONO_HASH_TABLE
structure IntMap : INTMAP
==> IntBinaryMap : ORD_MAP
also IntListMap : ORD_MAP
structure IntSet : INTSET
==> IntBinarySet : ORD_MAP
also IntListSet : ORD_MAP
structure LibBase
Uses of the LibBase.BadArg exception have been replaced by
the Fail exception from the SML'97 basis. The function
LibBase.failure replaces LibBase.badArg.
Uses of the type LibBase.relation have been replaced by the
order type from the SML'97 basis.
The type of the version value has changed, and the value
versionName is now called banner.
structure ListUtil : LIST_UTIL
Deleted. Use the operations from List and ListPair in the
SML'97 basis.
structure Name : NAME
==> Atom : ATOM
and AtomTable : ATOM_TABLE
structure MakeString : MAKESTRING
Deleted. In SML'97, basic types provide their own conversion
functions.
signature ORD_SET
Many function names changed to track the SML'97 naming conventions:
val find : ...
Deleted
val peek : ...
==> find : ...
val fold : ...
==> foldr : ...
val revfold : ...
==> foldl : ...
Also, the ORD_SET interface provides the following new operations:
add', compare, and filter.
structure PolyHashTable : POLY_HASH_TABLE
==> HashTable : HASH_TABLE
structure PolyArrayQSort : POLY_ARRAY_SORT
==> ArrayQSort : ARRAY_SORT
structure Rand : RAND
==> Random : RANDOM
structure Random : RANDOM
==> Rand : RAND
functor SplayDict (...) : DICT
==> SplayMapFn (...) : ORD_MAP
functor SplaySet (...)
==> SplaySetFn (...)
structure StringUtil : STRING_UTIL
Deleted. Use operations from String and Substring structures.
structure StringCvt : STRING_CVT
Deleted. In SML'97, basic types provide their own conversion
functions.
structure UnixPath : UNIX_PATH
==> structure PathUtil : PATH_UTIL
Many of the operations defined in the UnixPath structure are
now part of the OS.FileSys and OS.Path structures in the SML'97
basis. The remaining operations are findFile and findFiles.
In addition, two new functions are provided: existsFile and
allFiles.
--------------------------------------------------------------------
New modules
-----------
KeywordFn
Hash2TableFn
structure ParserComb : PARSER_COMB
structure SimpleURef : UREF
structure URef : UREF
--------------------------------------------------------------------
New Libraries
-------------
HTML library
Reactive library
Regular expression library
|