[MLton] cvs commit: latex2html --> HeVeA
sweeks@mlton.org
sweeks@mlton.org
Tue, 2 Dec 2003 15:03:53 -0800
sweeks 03/12/02 15:03:53
Modified: doc/user-guide .cvsignore Makefile basis.tex bugs.tex cm.tex
compiling.tex credits.tex cross-compiling.tex
drawbacks.tex extensions.tex features.tex ffi.tex
getting-started.tex macros.tex main.tex
man-page.tex nj-deviations.tex platform.tex
profiling.tex
Added: doc/user-guide hevea.sty macros.hva
Log:
MAIL latex2html --> HeVeA
Switched the tool used to produce the HTML version of our user guide
from latex2html to hevea. This was brought on by Debain bug #221341,
which pointed out that latex2html does not meet Debian's standard of
freeness, and hence if we continued using it we would have had to move
MLton out of their free section.
Anways, the change was relatively painless, and hevea certainly runs
quite a bit faster.
Revision Changes Path
1.6 +5 -6 mlton/doc/user-guide/.cvsignore
Index: .cvsignore
===================================================================
RCS file: /cvsroot/mlton/mlton/doc/user-guide/.cvsignore,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- .cvsignore 8 Jul 2003 19:48:52 -0000 1.5
+++ .cvsignore 2 Dec 2003 23:03:52 -0000 1.6
@@ -1,14 +1,13 @@
*~
+*.aux
+*.bbl
+*.blg
+*.log
+*.toc
TAGS
core
-macros.aux
main
-main.aux
-main.bbl
-main.blg
main.dvi
-main.log
main.pdf
main.ps
main.ps.gz
-main.toc
1.16 +11 -5 mlton/doc/user-guide/Makefile
Index: Makefile
===================================================================
RCS file: /cvsroot/mlton/mlton/doc/user-guide/Makefile,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -r1.15 -r1.16
--- Makefile 8 Jul 2003 19:48:52 -0000 1.15
+++ Makefile 2 Dec 2003 23:03:52 -0000 1.16
@@ -1,6 +1,7 @@
TEX_FILES = \
abstract.tex \
basis.tex \
+ bib.bib \
bugs.tex \
cm.tex \
compiling.tex \
@@ -21,15 +22,20 @@
profiling.tex \
sunos.tex
-all: main.ps main/main.html
+all: main.ps main/index.html
+
+main/index.html: $(TEX_FILES)
+ mkdir -p main
+ hevea -fix -o main/main.html -exec xxdate.exe macros.hva main.tex
+ cd main && hacha main.html && rm -f main.html
# -verbosity 0 be quieter (but not quiet enough for my taste)
# -address '' puts no author address at the bottom of each page
-main/main.html: $(TEX_FILES)
- latex2html -long_titles 3 -verbosity 1 -address '' -local_icons main.tex
- cd main && rm -f WARNINGS images.* *.pl
- cd main && rm -f index.html && ln -s main.html index.html
+#main/main.html: $(TEX_FILES)
+# latex2html -long_titles 3 -verbosity 1 -address '' -local_icons main.tex
+# cd main && rm -f WARNINGS images.* *.pl
+# cd main && rm -f index.html && ln -s main.html index.html
main.dvi: $(TEX_FILES)
latex main; bibtex main; latex main; latex main
1.32 +12 -9 mlton/doc/user-guide/basis.tex
Index: basis.tex
===================================================================
RCS file: /cvsroot/mlton/mlton/doc/user-guide/basis.tex,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -r1.31 -r1.32
--- basis.tex 11 Sep 2003 00:51:07 -0000 1.31
+++ basis.tex 2 Dec 2003 23:03:52 -0000 1.32
@@ -1,5 +1,5 @@
-\sec{Basis library}{basis-library}
-
+\sec{Basis library}{basis-library}{Basis_library.html}
+%
This section describes {\mlton}'s implementation of the 2002 Standard ML
Basis Library specification, available at
\link{http://www.standardml.org/Basis/}.
@@ -14,7 +14,7 @@
structures, as described below. You can always obtain a complete and
current list of what's available by calling {\tt mlton -show-basis
true}.
-
+%
\subsection{Toplevel types and constructors}
{
\tt eqtype 'a array\\
@@ -33,7 +33,7 @@
\tt eqtype 'a vector\\
\tt eqtype word\\
}
-
+%
\subsection{Top level exception constructors}
{\tt Bind},
{\tt Chr},
@@ -47,10 +47,10 @@
{\tt Size},
{\tt Span},
{\tt Subscript}.
-
+%
\subsection{Top level values}
-{\mlton does not implement the optional top level value
+{\mlton} does not implement the optional top level value
\verb+use: string -> unit+, which conflicts with whole
program compilation because it allows new code to be loaded
dynamically.
@@ -106,7 +106,7 @@
{\tt trunc},
{\tt valOf},
{\tt vector}.
-
+%
\newcommand{\signature}[1]{{\tt #1}\\}
\subsection{Top level signatures}
\signature{ARRAY}
@@ -172,7 +172,7 @@
\signature{VECTOR}
\signature{VECTOR\_SLICE}
{\tt WORD}.
-
+%
\newcommand{\fullmodule}[2]{{\tt #1: #2}\\ }
\subsection{Top level structures}
\fullmodule{Array}{ARRAY}
@@ -335,6 +335,8 @@
\fullmodule{Word64Vector}{MONO\_VECTOR}
\fullmodule{Word64VectorSlice}{MONO\_VECTOR\_SLICE}
+% extra space for HeVeA
+
The following structures equivalences hold.\\
\begin{tabular}{l}
\tt Int = Int32 = FixedInt = Position\\
@@ -360,8 +362,9 @@
can compile with {\tt -ieee-fp true}, which will cause intermediate
results to be stored after each operation. This may cause a
substantial performance penalty.
-
+%
\subsection{Top level functors}
+
{\tt ImperativeIO}\\
{\tt PrimIO}\\
{\tt StreamIO}
1.5 +3 -3 mlton/doc/user-guide/bugs.tex
Index: bugs.tex
===================================================================
RCS file: /cvsroot/mlton/mlton/doc/user-guide/bugs.tex,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- bugs.tex 12 Mar 2003 20:35:40 -0000 1.4
+++ bugs.tex 2 Dec 2003 23:03:52 -0000 1.5
@@ -1,11 +1,11 @@
-\sec{Bugs}{bugs}
-
+\sec{Bugs}{bugs}{Bugs.html}
+%
\subsection{Reporting a bug}
To report a bug, please send mail to {\mltonmail}. Please include the
complete SML program that caused the problem and a log of a compile of
the program with {\tt -verbose 2}.
-
+%
\subsection{Unresolved bugs}
This section lists the known unresolved bugs in MLton.
1.4 +4 -4 mlton/doc/user-guide/cm.tex
Index: cm.tex
===================================================================
RCS file: /cvsroot/mlton/mlton/doc/user-guide/cm.tex,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- cm.tex 21 May 2003 01:04:15 -0000 1.3
+++ cm.tex 2 Dec 2003 23:03:52 -0000 1.4
@@ -1,5 +1,5 @@
-\sec{CM}{cm}
-
+\sec{CM}{cm}{CM.html}
+%
For porting code from SML/NJ and for developing code for MLton under SML/NJ,
{\mlton} supports a very limited subset of
\htmladdnormallink{Compilation Manager}
@@ -67,7 +67,7 @@
file in more than one way, only the first occurrence of the file is included.
Finally, the only valid file suffixes in a CM file are {\tt .cm}, {\tt .fun},
{\tt .sig}, and {\tt .sml}.
-
+%
\subsec{Comparison with CM}{comparison}
If you are unfamiliar with CM under {\smlnj}, then you should skip this
@@ -88,7 +88,7 @@
groups and libraries, which {\mlton} does not. CM supports other tools like lex
and yacc, while {\mlton} does not. {\mlton} relies on traditional makefiles to
use other tools.
-
+%
\subsec{Porting {\smlnj} CM files to {\mlton}}{porting-cm}
If you have already created large projects using {\smlnj} and CM, there may be a
1.15 +4 -4 mlton/doc/user-guide/compiling.tex
Index: compiling.tex
===================================================================
RCS file: /cvsroot/mlton/mlton/doc/user-guide/compiling.tex,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -r1.14 -r1.15
--- compiling.tex 14 Jul 2003 19:15:10 -0000 1.14
+++ compiling.tex 2 Dec 2003 23:03:52 -0000 1.15
@@ -1,10 +1,10 @@
-\sec{Compiling {\mlton}}{compiling}
-
+\sec{Compiling {\mlton}}{compiling}{Compiling_MLton.html}
+%
If you want to compile {\mlton}, you need either the source {\tt rpm}
or {\tt tgz}. You can compile with either {\mlton} or {\smlnj}, but
we strongly recommend using {\mlton}, since it generates a much faster
executable.
-
+%
\subsection{Compiling with {\mlton}}
To compile with {\mlton}, you need the binary versions of {\tt mlton},
@@ -32,7 +32,7 @@
consumed by other processes. In this case, you may see an {\tt Out of
memory} message, or self-compilation may become extremely slow. The
only fix is to make sure that enough memory is available.
-
+%
\subsection{Compiling with {\smlnj}}
To compile with {\smlnj}, run {\tt make nj-mlton} from within the root
1.33 +2 -2 mlton/doc/user-guide/credits.tex
Index: credits.tex
===================================================================
RCS file: /cvsroot/mlton/mlton/doc/user-guide/credits.tex,v
retrieving revision 1.32
retrieving revision 1.33
diff -u -r1.32 -r1.33
--- credits.tex 26 Aug 2003 03:52:37 -0000 1.32
+++ credits.tex 2 Dec 2003 23:03:52 -0000 1.33
@@ -1,5 +1,5 @@
-\sec{Credits}{credits}
-
+\sec{Credits}{credits}{Credits.html}
+%
{\mlton} was designed and implemented by Henry Cejtin, Matthew Fluet, Suresh
Jagannathan, and Stephen Weeks.
1.11 +2 -2 mlton/doc/user-guide/cross-compiling.tex
Index: cross-compiling.tex
===================================================================
RCS file: /cvsroot/mlton/mlton/doc/user-guide/cross-compiling.tex,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- cross-compiling.tex 27 Aug 2003 21:13:31 -0000 1.10
+++ cross-compiling.tex 2 Dec 2003 23:03:52 -0000 1.11
@@ -1,5 +1,5 @@
-\sec{Cross compiling}{cross-compiling}
-
+\sec{Cross compiling}{cross-compiling}{Cross_compiling.html}
+%
You can use the {\mlton}'s {\tt -target} flag to cross compile
applications. By default, {\mlton} is only able to compile for the
machine it is running on. In order to use {\mlton} as a cross
1.10 +1 -1 mlton/doc/user-guide/drawbacks.tex
Index: drawbacks.tex
===================================================================
RCS file: /cvsroot/mlton/mlton/doc/user-guide/drawbacks.tex,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- drawbacks.tex 8 Jul 2003 19:48:52 -0000 1.9
+++ drawbacks.tex 2 Dec 2003 23:03:52 -0000 1.10
@@ -1,4 +1,4 @@
-\sec{Drawbacks of {\mlton}}{drawbacks}
+\sec{Drawbacks of {\mlton}}{drawbacks}{Drawbacks_MLton.html}
\newcommand{\drawback}[1]{\item[\bf #1]\hspace{1in}\\}
1.50 +33 -19 mlton/doc/user-guide/extensions.tex
Index: extensions.tex
===================================================================
RCS file: /cvsroot/mlton/mlton/doc/user-guide/extensions.tex,v
retrieving revision 1.49
retrieving revision 1.50
diff -u -r1.49 -r1.50
--- extensions.tex 27 Aug 2003 21:12:52 -0000 1.49
+++ extensions.tex 2 Dec 2003 23:03:52 -0000 1.50
@@ -1,6 +1,7 @@
-\sec{{\mlton} extensions}{mlton}
-
+\sec{{\mlton} extensions}{mlton}{MLton_extensions.html}
+%
\subsection{{\nline} directives}
+
To aid in the debugging of code produced by program genenerators such as
\htmladdnormallink{Noweb}{http://www.eecs.harvard.edu/~nr/noweb/},
{\mlton} supports comments with {\nline} directives of the form {\tt (*\#line
@@ -12,7 +13,7 @@
affect program semantics (except for functions like {\tt MLton.Exn.history}
which report source file positions). Syntactically invalid {\nline} directives
are ignored.
-
+%
\subsection{The {\tt MLton} structure}
The remainder of this section describes the modules {\mlton} makes
@@ -57,7 +58,7 @@
structure World: MLTON_WORLD
end
\end{verbatim}
-
+%
\subsubsection{{\tt MLton}}
\newcommand{\entry}[1]{\item[\tt #1]\hspace{1in}\\}
@@ -101,6 +102,7 @@
\end{description}
\subsubsec{{\tt MLton.Array}}{array}
+
\begin{verbatim}
signature MLTON_ARRAY =
sig
@@ -115,8 +117,9 @@
by the equations $b_0 = b$ and $(a_i, b_{i+1}) = f (i, b_i)$.
\end{description}
-
+%
\subsubsection{{\tt MLton.BinIO}}
+
\begin{verbatim}
signature MLTON_BIN_IO =
MLTON_IO
@@ -234,6 +237,7 @@
\end{description}
\subsubsection{{\tt MLton.GC}}
+%
\begin{verbatim}
signature MLTON_GC =
sig
@@ -267,7 +271,7 @@
resizes the heap to the desired size.
\end{description}
-
+%
\subsubsection{{\tt MLton.IntInf}}
{\mlton} represents an arbitrary precision integer either as an
@@ -379,8 +383,9 @@
\entry{signal t}
return the signal corresponding to {\tt t}.
\end{description}
-
+%
\subsubsection{\tt MLton.Platform}
+
\begin{verbatim}
signature MLTON_PLATFORM =
sig
@@ -431,8 +436,9 @@
lower case string for operating system.
\end{description}
-
+%
\subsubsection{\tt MLton.ProcEnv}
+
\begin{verbatim}
signature MLTON_PROC_ENV =
sig
@@ -444,7 +450,7 @@
\entry{setenv \{name, value\}}
Like the C {\tt setenv} function.
\end{description}
-
+%
\subsubsection{\tt MLton.Process}
\begin{verbatim}
@@ -540,8 +546,9 @@
data.
\end{description}
-
+%
\subsubsection{\tt MLton.Random}
+
\begin{verbatim}
signature MLTON_RANDOM =
sig
@@ -574,8 +581,9 @@
()} returns {\tt NONE}.
\end{description}
-
+%
\subsubsection{\tt MLton.Rlimit}
+
This structure provides a wrapper around the C {\tt getrlimit} and {\tt
setrlimit}.
\begin{verbatim}
@@ -620,8 +628,9 @@
\entry{set (r, \{hard, soft\})}
sets the hard and soft limits for resource {\tt r}. May raise {\tt OS.SysErr}.
\end{description}
-
+%
\subsubsection{\tt MLton.Rusage}
+
\begin{verbatim}
signature MLTON_RUSAGE =
sig
@@ -766,8 +775,9 @@
temporarily sets the signal mask to {\tt m} and suspends until an
unmasked signal is received and handled, and then resets the mask.
\end{description}
-
+%
\subsubsection{{\tt MLton.Socket}}
+
This module contains a bare minimum of functionality to do TCP/IP
programming. This module is implemented on top of the {\tt Socket}
module of the Standard Basis Library. We encourage you to use the
@@ -841,8 +851,9 @@
\entry{shutdownWrite out}
cause the write part of the socket associated with {\tt out} to be shutdown.
\end{description}
-
+%
\subsubsection{\tt MLton.Syslog}
+
A complete interface to the system logging facilities. See {\tt man 3 syslog}
for more details.
\begin{verbatim}
@@ -905,8 +916,9 @@
message, and is typically set to the program name.
\end{description}
-
+%
\subsubsection{{\tt MLton.TextIO}}
+
\begin{verbatim}
signature MLTON_TEXT_IO =
MLTON_IO
@@ -967,8 +979,9 @@
start running thread {\tt t} computing the value {\tt g ()}.
\end{description}
-
+%
\subsubsection{\tt MLton.Vector}
+
\begin{verbatim}
signature MLTON_VECTOR =
sig
@@ -1015,8 +1028,9 @@
\entry{new x}
returns a weak pointer to {\tt x}.
\end{description}
-
+%
\subsubsection{\tt MLton.Word, MLton.Word8}
+
\begin{verbatim}
signature MLTON_WORD =
sig
@@ -1074,7 +1088,7 @@
the file {\tt f} that will resume with thread {\tt t} upon restart.
\end{description}
-
+%
\subsection{{\tt SMLofNJ: SML\_OF\_NJ}}
{\tt SMLofNJ} implements a subset of the structure of the same name
@@ -1155,7 +1169,7 @@
continuing computation.
\end{description}
-
+%
\subsection{{\tt Unsafe: UNSAFE}}
This module is a subset of the {\tt Unsafe} module provided by
1.16 +3 -2 mlton/doc/user-guide/features.tex
Index: features.tex
===================================================================
RCS file: /cvsroot/mlton/mlton/doc/user-guide/features.tex,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -r1.15 -r1.16
--- features.tex 17 Aug 2003 00:30:27 -0000 1.15
+++ features.tex 2 Dec 2003 23:03:52 -0000 1.16
@@ -1,6 +1,7 @@
-\sec{Features of {\mlton}}{features}
-
+\sec{Features of {\mlton}}{features}{Features_MLton.html}
+%
\newcommand{\feature}[1]{\item[\bf #1]\hspace{1in}\\}
+%
\begin{description}
\feature{whole-program optimization}
Because {\mlton} compiles the whole program at once, it can perform optimization
1.17 +6 -5 mlton/doc/user-guide/ffi.tex
Index: ffi.tex
===================================================================
RCS file: /cvsroot/mlton/mlton/doc/user-guide/ffi.tex,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -r1.16 -r1.17
--- ffi.tex 20 Jul 2003 17:47:55 -0000 1.16
+++ ffi.tex 2 Dec 2003 23:03:52 -0000 1.17
@@ -1,12 +1,13 @@
-\sec{Foreign function interface (FFI)}{ffi}
-
+\sec{Foreign function interface (FFI)}{ffi}{Foreign_function_interface.html}
+%
{\mlton}'s FFI is {\em not} part of Standard ML and it is quite
possible that this interface will change. That having been said, with
{\mlton} it is easy to access C global variables and to make calls
from SML to C and from C to SML, at least when dealing with simple
types like {\tt char}, {\tt int}, {\tt real}, and {\tt word}.
-
+%
\subsection{Calling from SML to C}
+
Suppose you would like SML to call a C function with the following
prototype:
\begin{verbatim}
@@ -100,7 +101,7 @@
Notice that {\tt ffi-export.c} includes {\tt export.h}, the header
file generated by {\mlton}.
-
+%
\subsection{FFI types}
{\mlton} only allows a values of certain SML types to be passed
@@ -121,7 +122,7 @@
is the mapping between SML types and C types.
\begin{center}
-\begin{tabular}{lll}
+\begin{tabular}{l|l|l}
SML type & C typedef & C type\\
\hline
{\tt array} & {\tt Pointer} & {\tt char *} \\
1.19 +3 -3 mlton/doc/user-guide/getting-started.tex
Index: getting-started.tex
===================================================================
RCS file: /cvsroot/mlton/mlton/doc/user-guide/getting-started.tex,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -r1.18 -r1.19
--- getting-started.tex 8 Jul 2003 19:48:52 -0000 1.18
+++ getting-started.tex 2 Dec 2003 23:03:52 -0000 1.19
@@ -1,7 +1,7 @@
-\sec{Getting started}{getting-started}
-
+\sec{Getting started}{getting-started}{Getting_started.html}
+%
\subsection{Installation}
-
+%
{\mlton} runs on {\intel} machines with either Linux, FreeBSD, or
Cygwin/Windows and on {\sparc} machines with SunOS. {\mlton} is
distributed in both source and binary form -- the format for the
1.18 +5 -2 mlton/doc/user-guide/macros.tex
Index: macros.tex
===================================================================
RCS file: /cvsroot/mlton/mlton/doc/user-guide/macros.tex,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -r1.17 -r1.18
--- macros.tex 8 Jul 2003 19:48:52 -0000 1.17
+++ macros.tex 2 Dec 2003 23:03:52 -0000 1.18
@@ -1,3 +1,6 @@
+\usepackage{hevea}
+\newcommand{\htmladdnormallink}[2]{\ahref{#2}{#1}}
+
\newcommand{\absolutelink}[1]{\link{\makeurl{#1}}}
\newcommand{\addr}{mlton.org}
\newcommand{\alternative}[1]{ & | & #1\\}
@@ -8,7 +11,7 @@
\newcommand{\filelink}[1]{\htmladdnormallink{{\tt #1}}{file:#1}}
\newcommand{\kit}{ML Kit}
\newcommand{\link}[1]{\htmladdnormallink{{\tt #1}}{#1}}
-\newcommand{\mailto}[2]{{\tt #1 at #2}}
+\renewcommand{\mailto}[2]{{\tt #1 at #2}}
\newcommand{\makeurl}[1]{http://www.\addr/#1}
\newcommand{\mlprof}{{\tt mlprof}}
\newcommand{\mltonmail}{{\tt MLton@\addr}}
@@ -26,4 +29,4 @@
\newcommand{\subsubsec}[2]{\subsubsection{#1}\label{section:#2}}
\newcommand{\version}{MLTONVERSION}
\newcommand{\intel}{X86}
-\renewcommand{\sec}[2]{\section{#1}\label{section:#2}}
+\renewcommand{\sec}[3]{\section{#1}\label{section:#2}{\cutname{#3}}}
1.9 +7 -3 mlton/doc/user-guide/main.tex
Index: main.tex
===================================================================
RCS file: /cvsroot/mlton/mlton/doc/user-guide/main.tex,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- main.tex 26 Aug 2003 16:39:08 -0000 1.8
+++ main.tex 2 Dec 2003 23:03:52 -0000 1.9
@@ -1,5 +1,5 @@
\documentclass[12pt]{article}
-\usepackage{alltt,html,latexsym,longtable,psfrag}
+\usepackage{alltt,latexsym,longtable,psfrag}
\setlength{\topmargin}{-0.5in}
\setlength{\textheight}{8.5in}
@@ -9,19 +9,23 @@
\hyphenation{stan-dard}
+\include{macros}
+
\title{{\mlton} User Guide}
\author{Copyright \copyright\ 2003 Henry Cejtin, Matthew Fluet, Suresh
Jagannathan, and Stephen Weeks}
\date{\today}
-\include{macros}
+% For HeVeA.
+\setcounter{cuttingdepth}{2}
\begin{document}
-
\maketitle
\input{abstract}
+\begin{latexonly}
\tableofcontents
+\end{latexonly}
\input{getting-started}
\input{features}
\input{drawbacks}
1.42 +6 -6 mlton/doc/user-guide/man-page.tex
Index: man-page.tex
===================================================================
RCS file: /cvsroot/mlton/mlton/doc/user-guide/man-page.tex,v
retrieving revision 1.41
retrieving revision 1.42
diff -u -r1.41 -r1.42
--- man-page.tex 13 Oct 2003 15:46:52 -0000 1.41
+++ man-page.tex 2 Dec 2003 23:03:52 -0000 1.42
@@ -1,5 +1,5 @@
-\sec{Manual page}{manual-page}
-
+\sec{Manual page}{manual-page}{Manual_page.html}
+%
{\mlton} is run from the command line with a collection of options
followed by a file name and a list of files to compile, assemble, and
link with.
@@ -18,7 +18,7 @@
{\tt mlton foo.cm} will compile the complete SML program consisting of
the concatenatation of all the SML files referred to (either directly
or indirectly) by {\tt foo.cm}. See \secref{cm} for details.
-
+%
\subsec{Compile-time options}{compile-time-options}
{\mlton}'s options allow you to control the name of the output file,
@@ -96,7 +96,7 @@
\option{-keep \choiceThree{g}{o}{sml}}
Save the intermediate file(s) corresponding to the given arg. If
no {\tt -keep} argument is given, then only the final file(s) is saved.\\
-\begin{tabular}{ll}
+\begin{tabular}{l|l}
{\tt g} & generated {\tt .S} and {\tt .c} files passed to gcc and the assembler\\
{\tt o} & object files\\
{\tt sml} & SML file\\
@@ -161,7 +161,7 @@
\option{-stop \choiceFour{f}{g}{o}{sml}}
Secify pass to stop at.\\
-\begin{tabular}{ll}
+\begin{tabular}{l|l}
{\tt f} & list of files on stdout (only makes sense when input is {\tt foo.cm})\\
{\tt g} & generated {\tt .S} and {\tt .c} files\\
{\tt o} & object file\\
@@ -180,7 +180,7 @@
\option{-verbose \choiceFour{0}{1}{2}{3}}
How verbose to be about what passes are running. The default is 0.\\
-\begin{tabular}{ll}
+\begin{tabular}{l|l}
{\tt 0} & silent\\
{\tt 1} & calls to compiler, assembler, and linker\\
{\tt 2} & 1 + intermediate compiler passes\\
1.7 +6 -5 mlton/doc/user-guide/nj-deviations.tex
Index: nj-deviations.tex
===================================================================
RCS file: /cvsroot/mlton/mlton/doc/user-guide/nj-deviations.tex,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- nj-deviations.tex 12 Sep 2003 01:01:28 -0000 1.6
+++ nj-deviations.tex 2 Dec 2003 23:03:52 -0000 1.7
@@ -1,5 +1,6 @@
\sec{Deviations of {\smlnj} from Standard ML}{nj-deviations}
-
+ {Deviations_SML_NJ_from.html}
+%
This section lists some deviations of {\smlnj} from The Definition of
Standard ML. Some of these are documented in the
\htmladdnormallink
@@ -30,7 +31,7 @@
val v = #[1,2,3]
val #[x,y,z] = v
\end{verbatim}
-
+%
\item
{\smlnj} extends the syntax of the language to allow {\em or patterns}
like the following:
@@ -38,7 +39,7 @@
datatype foo = Foo of int | Bar of int
val (Foo x | Bar x) = Foo 13
\end{verbatim}
-
+%
\item
{\smlnj} allows higher-order functors, that is, functors can be
components of structures and can be passed as functor arguments and
@@ -74,7 +75,7 @@
and type u = v
end
\end{verbatim}
-
+%
\item
{\smlnj} does not expand the {\tt withtype} derived form as described by
the Definition. According to page 55 of the Definition, the type
@@ -104,7 +105,7 @@
A of int
| B of int
\end{verbatim}
-
+%
\item
{\smlnj} allows {\tt withtype} specifications in signatures.
1.2 +2 -2 mlton/doc/user-guide/platform.tex
Index: platform.tex
===================================================================
RCS file: /cvsroot/mlton/mlton/doc/user-guide/platform.tex,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- platform.tex 10 Apr 2003 02:03:04 -0000 1.1
+++ platform.tex 2 Dec 2003 23:03:52 -0000 1.2
@@ -1,5 +1,5 @@
-\sec{Platform-specific notes}{platform}
-
+\sec{Platform-specific notes}{platform}{Platform_specific_notes.html}
+%
This section discusses issues that arise when running or building
MLton on various platforms.
1.32 +6 -6 mlton/doc/user-guide/profiling.tex
Index: profiling.tex
===================================================================
RCS file: /cvsroot/mlton/mlton/doc/user-guide/profiling.tex,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -r1.31 -r1.32
--- profiling.tex 10 Jul 2003 05:56:02 -0000 1.31
+++ profiling.tex 2 Dec 2003 23:03:52 -0000 1.32
@@ -1,5 +1,5 @@
-\sec{Profiling}{profiling}
-
+\sec{Profiling}{profiling}{Profiling.html}
+%
With {\mlton} and {\tt mlprof}, you can profile your program to find
out for each function how much time it spends or how many bytes it
allocates. To profile your program, compile with either {\tt -profile
@@ -80,7 +80,7 @@
Time profiling typically has a very small performance impact.
However, the performance impact of allocation profiling is noticeable,
because it inserts additional C calls for object allocation.
-
+%
\subsection{Profiling the stack}
For both allocation and time profiling, you can use {\tt
@@ -107,7 +107,7 @@
The performance impact of {\tt -profile-stack true} can be noticeable
since there is some extra bookkeeping at every nontail call.
-
+%
\subsection{Call graphs}
For easier visualization of profiling data, {\tt mlprof} creates a
@@ -212,7 +212,7 @@
duplicates of functions whose name has a prefix matching the regular
expression to be treated separately. This can be especially useful
for higher-order utility functions like {\tt General.o}.
-
+%
\subsection{Using {\tt MLton.Profile}}
To profile individual portions of your program, you can use the {\tt
@@ -250,7 +250,7 @@
tak 10.5%
<unknown> 2.8%
\end{verbatim}
-
+%
\subsection{Profiling details}
Technically speaking, {\tt mlprof} produces a call-stack graph rather
1.1 mlton/doc/user-guide/hevea.sty
Index: hevea.sty
===================================================================
% hevea : hevea.sty
% This is a very basic style file for latex document to be processed
% with hevea. It contains definitions of LaTeX environment which are
% processed in a special way by the translator.
% Mostly :
% - latexonly, not processed by hevea, processed by latex.
% - htmlonly , the reverse.
% - rawhtml, to include raw HTML in hevea output.
% - toimage, to send text to the image file.
% The package also provides hevea logos, html related commands (ahref
% etc.), void cutting and image commands.
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{hevea}[2002/01/11]
\RequirePackage{comment}
\newif\ifhevea\heveafalse
\@ifundefined{ifimagen}{\newif\ifimagen\imagenfalse}
\makeatletter%
\newcommand{\heveasmup}[2]{%
\raise #1\hbox{$\m@th$%
\csname S@\f@size\endcsname
\fontsize\sf@size 0%
\math@fontsfalse\selectfont
#2%
}}%
\DeclareRobustCommand{\hevea}{H\kern-.15em\heveasmup{.2ex}{E}\kern-.15emV\kern-.15em\heveasmup{.2ex}{E}\kern-.15emA}%
\DeclareRobustCommand{\hacha}{H\kern-.15em\heveasmup{.2ex}{A}\kern-.15emC\kern-.1em\heveasmup{.2ex}{H}\kern-.15emA}%
\DeclareRobustCommand{\html}{\protect\heveasmup{0.ex}{HTML}}
%%%%%%%%% Hyperlinks hevea style
\newcommand{\ahref}[2]{{#2}}
\newcommand{\ahrefloc}[2]{{#2}}
\newcommand{\aname}[2]{{#2}}
\newcommand{\ahrefurl}[1]{\texttt{#1}}
\newcommand{\footahref}[2]{#2\footnote{\texttt{#1}}}
\newcommand{\mailto}[1]{\texttt{#1}}
\newcommand{\imgsrc}[2][]{}
\newcommand{\home}[1]{\protect\raisebox{-.75ex}{\char126}#1}
\AtBeginDocument
{\@ifundefined{url}
{%url package is not loaded
\let\url\ahref\let\oneurl\ahrefurl\let\footurl\footahref}
{}}
%% Void cutting instructions
\newcounter{cuttingdepth}
\newcommand{\tocnumber}{}
\newcommand{\notocnumber}{}
\newcommand{\cuttingunit}{}
\newcommand{\cutdef}[2][]{}
\newcommand{\cuthere}[2]{}
\newcommand{\cutend}{}
\newcommand{\htmlhead}[1]{}
\newcommand{\htmlfoot}[1]{}
\newcommand{\htmlprefix}[1]{}
\newenvironment{cutflow}[1]{}{}
\newcommand{\cutname}[1]{}
\newcommand{\toplinks}[3]{}
%%%% Html only
\excludecomment{rawhtml}
\newcommand{\rawhtmlinput}[1]{}
\excludecomment{htmlonly}
%%%% Latex only
\newenvironment{latexonly}{}{}
\newenvironment{verblatex}{}{}
%%%% Image file stuff
\def\toimage{\endgroup}
\def\endtoimage{\begingroup\def\@currenvir{toimage}}
\def\verbimage{\endgroup}
\def\endverbimage{\begingroup\def\@currenvir{verbimage}}
\newcommand{\imageflush}[1][]{}
%%% Bgcolor definition
\newsavebox{\@bgcolorbin}
\newenvironment{bgcolor}[2][]
{\newcommand{\@mycolor}{#2}\begin{lrbox}{\@bgcolorbin}\vbox\bgroup}
{\egroup\end{lrbox}%
\begin{flushleft}%
\colorbox{\@mycolor}{\usebox{\@bgcolorbin}}%
\end{flushleft}}
%%% Postlude
\makeatother
1.1 mlton/doc/user-guide/macros.hva
Index: macros.hva
===================================================================
\newcommand{\parbox}[2]{#2}