summaryrefslogtreecommitdiff
path: root/defsyn.tex
blob: a830a7c67b358bb46616d0d6141129923b63317b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
% vim: set spelllang=nl:
\subsection{Syntax}
\label{sec:def:syn}
We definiƫren de volgende syntax:
\setlength{\grammarindent}{5em}
\begin{grammar}
	<Pgm> ::= <Stm>:<Pgm> | $\lambda$

	<Stm> ::= `Push' <String>
		\alt `Cat' | `Head' | `Tail' | `Quotify'
		\alt `Put' | `Get'
		\alt `Input' | `Output'
		\alt `Exec'

	<String> ::= <Char><String> | $\lambda$
\end{grammar}

Een karakter, $\SynChar$, is een symbool uit de ASCII tabel.

Programma's zijn lijsten van statements. Merk op dat compositie van statements
hier expliciet is door middel van de \lit{:}, waar compositie in de
oorspronkelijke versie van de syntax impliciet was.