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
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"
"http://www.w3.org/TR/REC-html40/loose.dtd">
<HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<META name="GENERATOR" content="hevea 1.09">
<LINK rel="stylesheet" type="text/css" href="manual.css">
<TITLE>The Objective Caml language</TITLE>
</HEAD>
<BODY >
<A HREF="manual007.html"><IMG SRC="previous_motif.gif" ALT="Previous"></A>
<A HREF="index.html"><IMG SRC="contents_motif.gif" ALT="Up"></A>
<A HREF="manual021.html"><IMG SRC="next_motif.gif" ALT="Next"></A>
<HR>
<H1 CLASS="chapter"><A NAME="htoc51">Chapter6</A>The Objective Caml language</H1><P> <A NAME="c:refman"></A>
</P><H2 CLASS="section">Foreword</H2><P>This document is intended as a reference manual for the Objective Caml
language. It lists the language constructs, and gives their precise
syntax and informal semantics. It is by no means a tutorial
introduction to the language: there is not a single example. A good
working knowledge of Caml is assumed.</P><P>No attempt has been made at mathematical rigor: words are employed
with their intuitive meaning, without further definition. As a
consequence, the typing rules have been left out, by lack of the
mathematical framework required to express them, while they are
definitely part of a full formal definition of the language. </P><H3 CLASS="subsection">Notations</H3><P>The syntax of the language is given in BNF-like notation. Terminal
symbols are set in typewriter font (<FONT COLOR=blue><TT>like</TT> <TT>this</TT></FONT>).
Non-terminal symbols are set in italic font (<FONT COLOR=maroon><I>like that</I></FONT>).
Square brackets […] denote optional components. Curly brackets
{…} denotes zero, one or several repetitions of the enclosed
components. Curly bracket with a trailing plus sign {…}<SUP>+</SUP>
denote one or several repetitions of the enclosed components.
Parentheses (…) denote grouping.</P><UL>
<LI><A HREF="lex.html">Lexical conventions</A></LI>
<LI><A HREF="manual010.html">Values</A></LI>
<LI><A HREF="manual011.html">Names</A></LI>
<LI><A HREF="manual012.html">Type expressions</A></LI>
<LI><A HREF="manual013.html">Constants</A></LI>
<LI><A HREF="patterns.html">Patterns</A></LI>
<LI><A HREF="expr.html">Expressions</A></LI>
<LI><A HREF="manual016.html">Type and exception definitions</A></LI>
<LI><A HREF="manual017.html">Classes</A></LI>
<LI><A HREF="manual018.html">Module types (module specifications)</A></LI>
<LI><A HREF="manual019.html">Module expressions (module implementations)</A></LI>
<LI><A HREF="manual020.html">Compilation units</A></LI>
</UL>
<HR>
<A HREF="manual007.html"><IMG SRC="previous_motif.gif" ALT="Previous"></A>
<A HREF="index.html"><IMG SRC="contents_motif.gif" ALT="Up"></A>
<A HREF="manual021.html"><IMG SRC="next_motif.gif" ALT="Next"></A>
</BODY>
</HTML>
|