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