SCM Repository
[diderot] Annotation of /trunk/doc/report/syntax.tex
Annotation of /trunk/doc/report/syntax.tex
Parent Directory
|
Revision Log
Revision 97 -
(view)
(download)
(as text)
1 : |
jhr |
97 |
%!TEX root = report.tex
|
2 : |
|
|
%
|
3 : |
|
|
\chapter{Diderot Syntax}
|
4 : |
|
|
|
5 : |
|
|
\section{Notation}
|
6 : |
|
|
We write \kw{symbol} for keywords and punctuation symbols, \term{Terminal} for
|
7 : |
|
|
terminal symbols, and \nt{Nonterminal} for nonterminal symbols.
|
8 : |
|
|
We use the following conventions:
|
9 : |
|
|
\begin{Grammar}
|
10 : |
|
|
\begin{Rules}{Nonterminal}
|
11 : |
|
|
\RHS[For an optional \nt{A}.]{\OPT{\nt{A}}}
|
12 : |
|
|
\RHS[For zero or more \nt{A}s.]{\LIST{\nt{A}}}
|
13 : |
|
|
\RHS[For one or more \nt{A}s.]{\LISTONE{\nt{A}}}
|
14 : |
|
|
\RHS[For an optional \nt{A} \nt{B} pair.]{\OPTGRP{\nt{A} \nt{B}}}
|
15 : |
|
|
\RHS[For zero or more \nt{A} \nt{B} pairs.]{\LISTGRP{\nt{A} \nt{B}}}
|
16 : |
|
|
\RHS[For one or more \nt{A} \nt{B} pairs.]{\LISTONEGRP{\nt{A} \nt{B}}}
|
17 : |
|
|
\end{Rules}
|
18 : |
|
|
\end{Grammar}
|
19 : |
|
|
|
20 : |
|
|
|
21 : |
|
|
\section{Reserved symbols and keywords}
|
22 : |
|
|
|
23 : |
|
|
\section{Collected syntax}
|
24 : |
|
|
\begin{Grammar}[anchors]
|
25 : |
|
|
\ProgramRULES{}
|
26 : |
|
|
\DeclarationRULES{}
|
27 : |
|
|
\InputDeclRULES{}
|
28 : |
|
|
\ActorDeclRULES{}
|
29 : |
|
|
\ParamsRULES{}
|
30 : |
|
|
\ParamRULES{}
|
31 : |
|
|
\ActorMethodRULES{}
|
32 : |
|
|
\BlockRULES{}
|
33 : |
|
|
\StmtRULES{}
|
34 : |
|
|
\VarDeclRULES{}
|
35 : |
|
|
\TypeRULES{}
|
36 : |
|
|
\CoordinationDeclRULES{}
|
37 : |
|
|
\ArrayRULES{}
|
38 : |
|
|
\CollectionRULES{}
|
39 : |
|
|
\CreateRULES{}
|
40 : |
|
|
\IterationsRULES{}
|
41 : |
|
|
\IterationRULES{}
|
42 : |
|
|
\ExprRULES{}
|
43 : |
|
|
\AndExprRULES{}
|
44 : |
|
|
\CmpExprRULES{}
|
45 : |
|
|
\AddExprRULES{}
|
46 : |
|
|
\MulExprRULES{}
|
47 : |
|
|
\PrefixExprRULES{}
|
48 : |
|
|
\SelExprRULES{}
|
49 : |
|
|
\AtomExpRULES{}
|
50 : |
|
|
\ArgumentsRULES{}
|
51 : |
|
|
\CmpOpRULES{}
|
52 : |
|
|
\AddOpRULES{}
|
53 : |
|
|
\MulOpRULES{}
|
54 : |
|
|
\ValueTypeRULES{}
|
55 : |
|
|
\DimensionsRULES{}
|
56 : |
|
|
\DimensionRULES{}
|
57 : |
|
|
\end{Grammar}%
|