/usr/share/doc/mlton/guide/MLBasis is in mlton-doc 20100608-5.
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 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta name="robots" content="index,nofollow">
<title>MLBasis - MLton Standard ML Compiler (SML Compiler)</title>
<link rel="stylesheet" type="text/css" charset="iso-8859-1" media="all" href="common.css">
<link rel="stylesheet" type="text/css" charset="iso-8859-1" media="screen" href="screen.css">
<link rel="stylesheet" type="text/css" charset="iso-8859-1" media="print" href="print.css">
<link rel="Start" href="Home">
<link rel="Appendix" title="mlb-formal.pdf" href="http://mlton.org/pages/MLBasis/attachments/mlb-formal.pdf">
</head>
<body lang="en" dir="ltr">
<script src="http://www.google-analytics.com/urchin.js" type="text/javascript">
</script>
<script type="text/javascript">
_uacct = "UA-833377-1";
urchinTracker();
</script>
<table bgcolor = lightblue cellspacing = 0 style = "border: 0px;" width = 100%>
<tr>
<td style = "
border: 0px;
color: darkblue;
font-size: 150%;
text-align: left;">
<a class = mltona href="Home">MLton MLTONWIKIVERSION</a>
<td style = "
border: 0px;
font-size: 150%;
text-align: center;
width: 50%;">
MLBasis
<td style = "
border: 0px;
text-align: right;">
<table cellspacing = 0 style = "border: 0px">
<tr style = "vertical-align: middle;">
</table>
<tr style = "background-color: white;">
<td colspan = 3
style = "
border: 0px;
font-size:70%;
text-align: right;">
<a href = "Home">Home</a>
<a href = "TitleIndex">Index</a>
</table>
<div id="content" lang="en" dir="ltr">
The ML Basis system extends Standard ML to support programming-in-the-very-large, namespace management at the module level, separate delivery of library sources, and more. While Standard ML modules are a sophisticated language for programming-in-the-large, it is difficult, if not impossible, to accomplish a number of routine namespace management operations when a program draws upon multiple libraries provided by different vendors. <p>
The ML Basis system is a simple, yet powerful, approach that builds upon the programmer's intuitive notion (and <a href="DefinitionOfStandardML"> The Definition of Standard ML's</a> formal notion) of the top-level environment (a <em>basis</em>). The system is designed as a natural extension of <a href="StandardML"> Standard ML</a>; the formal specification of the ML Basis system (<a href="http://mlton.org/pages/MLBasis/attachments/mlb-formal.pdf"><img src="moin-www.png" alt="[WWW]" height="11" width="11">pdf</a>) is given in the style of the Definition.
</p>
<p>
Here are some of the key features of the ML Basis system:
</p>
<ol type="1">
<li>
<p>
Explicit file order: The order of files (and, hence, the order of evaluation) in the program is explicit. The ML Basis system's semantics are structured in such a way that for any well-formed project, there will be exactly one possible interpretation of the project's syntax, static semantics, and dynamic semantics.
</p>
</li>
<li class="gap">
<p>
Implicit dependencies: A source file (corresponding to an SML top-level declaration) is elaborated in the environment described by preceding declarations. It is not necessary to explicitly list the dependencies of a file.
</p>
</li>
<li class="gap">
<p>
Scoping and renaming: The ML Basis system provides mechanisms for limiting the scope of (i.e, hiding) and renaming identifiers.
</p>
</li>
<li class="gap">
<p>
No naming convention for finding the file that defines a module. To import a module, its defining file must appear in some ML Basis file.
</p>
</li>
</ol>
<h2 id="head-11fc14203dd0f4441645a9c34d5dd022905f56e4">Next steps</h2>
<ul>
<li>
<p>
<a href="MLBasisSyntaxAndSemantics">MLBasisSyntaxAndSemantics</a>
</p>
</li>
<li>
<p>
<a href="MLBasisExamples">MLBasisExamples</a>
</p>
</li>
<li>
<p>
<a href="MLBasisPathMap">MLBasisPathMap</a>
</p>
</li>
<li>
<p>
<a href="MLBasisAnnotations">MLBasisAnnotations</a>
</p>
</li>
<li>
<p>
<a href="MLBasisAvailableLibraries">MLBasisAvailableLibraries</a>
</p>
</li>
</ul>
</div>
<p>
<hr>
Last edited on 2007-08-23 04:24:53 by <span title="c-71-57-91-146.hsd1.il.comcast.net"><a href="MatthewFluet">MatthewFluet</a></span>.
</body></html>
|