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
|
<!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.08">
<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">Chapter 6</A> The Objective Caml language</H1> <A NAME="c:refman"></A>
<H2 CLASS="section">Foreword</H2>
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.<BR>
<BR>
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. <BR>
<BR>
<H3 CLASS="subsection">Notations</H3>
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><TT>like</TT> <TT>that</TT></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.<BR>
<BR>
<BR>
<BR>
<UL>
<LI><A HREF="manual009.html">Lexical conventions</A> <img alt="updated" src="updated_tiny.gif">
<LI><A HREF="manual010.html">Values</A> <img alt="updated" src="updated_tiny.gif">
<LI><A HREF="manual011.html">Names</A>
<LI><A HREF="manual012.html">Type expressions</A> <img alt="updated" src="updated_tiny.gif">
<LI><A HREF="manual013.html">Constants</A>
<LI><A HREF="manual014.html">Patterns</A>
<LI><A HREF="manual015.html">Expressions</A> <img alt="updated" src="updated_tiny.gif">
<LI><A HREF="manual016.html">Type and exception definitions</A> <img alt="updated" src="updated_tiny.gif">
<LI><A HREF="manual017.html">Classes</A>
<LI><A HREF="manual018.html">Module types (module specifications)</A>
<LI><A HREF="manual019.html">Module expressions (module implementations)</A>
<LI><A HREF="manual020.html">Compilation units</A>
</UL>
<BR>
<BR>
<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>
|