Import Debian changes 20180207-1
[hcoop/debian/mlton.git] / doc / hacker-guide / sources.tex
1 \chap{The sources}{sources}
2
3 This section is an overview of the sources to the compiler and all of the
4 associated tools. Here is a brief description of each element of the root
5 source directory. Throughout the rest of this document, we will use pathnames
6 that are relative to the source directory.
7
8 \begin{description}
9
10 \place{basis-library}
11 The basis library implementation.
12 \place{benchmark}
13 Code and tests used for benchmarking {\mlton}, {\smlnj}, and {\mosml}.
14 \place{bin}
15 Scripts for type checking the basis library, making rpms, running {\mlton}, and
16 running regression tests.
17 \place{doc}
18 Sources for the user guide, hacker guide, web site, announcements, README.
19 \place{include}
20 Include files needed for compiling C files generated by {\mlton}.
21 \place{lib}
22 SML library code, which is used in {\tt mlton}, {\tt mlprof}, and {\tt
23 benchmark}. There are also many generally useful libraries.
24 \place{Makefile}
25 To make everything. This is only used when building rpms.
26 \place{man}
27 Manual pages for {\tt mlton} and {\tt mlprof}.
28 \place{mllex}
29 Lexer generator, taken and slightly modified from {\smlnj}.
30 \place{mlprof}
31 Profiler.
32 \place{mlton}
33 Compiler.
34 \place{mlyacc}
35 Parser generator, taken and slightly modified from {\smlnj}.
36 \place{regression}
37 Regression tests, about 150 SML files that are used to test the compiler.
38 \place{runtime}
39 Runtime system, which includes the garbage collector and C libraries used in
40 the basis (including the GMP used for {\tt IntInf}).
41
42 \end{description}