Import Upstream version 20180207
[hcoop/debian/mlton.git] / doc / guide / src / MLBasisAvailableLibraries.adoc
CommitLineData
7f918cf1
CE
1MLBasisAvailableLibraries
2=========================
3
4MLton comes with the following <:MLBasis:ML Basis> files available.
5
6* `$(SML_LIB)/basis/basis.mlb`
7+
8The <:BasisLibrary:Basis Library>.
9
10* `$(SML_LIB)/basis/basis-1997.mlb`
11+
12The (deprecated) 1997 version of the <:BasisLibrary:Basis Library>.
13
14* `$(SML_LIB)/basis/mlton.mlb`
15+
16The <:MLtonStructure:MLton> structure and signatures.
17
18* `$(SML_LIB)/basis/c-types.mlb`
19+
20Various structure aliases useful as <:ForeignFunctionInterfaceTypes:>.
21
22* `$(SML_LIB)/basis/unsafe.mlb`
23+
24The <:UnsafeStructure:Unsafe> structure and signature.
25
26* `$(SML_LIB)/basis/sml-nj.mlb`
27+
28The <:SMLofNJStructure:SMLofNJ> structure and signature.
29
30* `$(SML_LIB)/mlyacc-lib/mlyacc-lib.mlb`
31+
32Modules used by parsers built with <:MLYacc:>.
33
34* `$(SML_LIB)/cml/cml.mlb`
35+
36<:ConcurrentML:>, a library for message-passing concurrency.
37
38* `$(SML_LIB)/mlnlffi-lib/mlnlffi-lib.mlb`
39+
40<:MLNLFFI:ML-NLFFI>, a library for foreign function interfaces.
41
42* `$(SML_LIB)/mlrisc-lib/...`
43+
44<:MLRISCLibrary:>, a library for retargetable and optimizing compiler back ends.
45
46* `$(SML_LIB)/smlnj-lib/...`
47+
48<:SMLNJLibrary:>, a collection of libraries distributed with SML/NJ.
49
50* `$(SML_LIB)/ckit-lib/ckit-lib.mlb`
51+
52<:CKitLibrary:>, a library for C source code.
53
54* `$(SML_LIB)/mllpt-lib/mllpt-lib.mlb`
55+
56<:MLLPTLibrary:>, a support library for the <:MLULex:> scanner generator and the <:MLAntlr:> parser generator.
57
58
59== Basis fragments ==
60
61There are a number of specialized ML Basis files for importing
62fragments of the <:BasisLibrary: Basis Library> that can not be
63expressed within SML.
64
65* `$(SML_LIB)/basis/pervasive-types.mlb`
66+
67The top-level types and constructors of the Basis Library.
68
69* `$(SML_LIB)/basis/pervasive-exns.mlb`
70+
71The top-level exception constructors of the Basis Library.
72
73* `$(SML_LIB)/basis/pervasive-vals.mlb`
74+
75The top-level values of the Basis Library, without infix status.
76
77* `$(SML_LIB)/basis/overloads.mlb`
78+
79The top-level overloaded values of the Basis Library, without infix status.
80
81* `$(SML_LIB)/basis/equal.mlb`
82+
83The polymorphic equality `=` and inequality `<>` values, without infix status.
84
85* `$(SML_LIB)/basis/infixes.mlb`
86+
87The infix declarations of the Basis Library.
88
89* `$(SML_LIB)/basis/pervasive.mlb`
90+
91The entire top-level value and type environment of the Basis Library, with infix status. This is the same as importing the above six MLB files.