\chapter{Compilation group}

\begin{syntax}
  \begin{0-1}
    \metaelement{program-definition} \\
    \metaelement{function-definition}
  \end{0-1} \ldots
\end{syntax}

where \defnmetaelement{program-definition} is

%TO-DO: Add OPTIONS paragraph!

\begin{syntax}
  \begin{0-1}
    \begin{1=}
      \key{IDENTIFICATION} \\
      \miscext{\key{ID}}
    \end{1=}
    \key{DIVISION}.
  \end{0-1} \newline
  \key{PROGRAM-ID}.
  \begin{1=}
    \metaelement{program-name-1} \\
    \miscext{\literal}
  \end{1=}
  \begin{0-1} \key{AS} \literal \end{0-1}
  \begin{0-1} IS
    \begin{1=}
      \begin{1+}
        \key{COMMON} \\

        \begin{1=}
          \key{INITIAL} \\
          \key{RECURSIVE}
        \end{1=}
      \end{1+} \\

      \miscext{\pending{\key{EXTERNAL}}}
    \end{1=}
    PROGRAM
  \end{0-1}. \newline
  \deleted{
    \begin{0-1}
      \metaelement{comment-paragraphs}
    \end{0-1}
  } \newline
  \begin{0-1}
    \metaelement{environment-division}
  \end{0-1} \newline
  \begin{0-1}
    \metaelement{data-division}
  \end{0-1} \newline
  \begin{0-1}
    \metaelement{procedure-division}
    \begin{0-1}
      \metaelement{program-definition}
    \end{0-1} \ldots
  \end{0-1} \newline
  \begin{0-1}
    \key{END} \key{PROGRAM}
    \begin{1=}
      \metaelement{program-name-1} \\
      \miscext{\metaelement{literal-1}} % TO-DO: Improve!
    \end{1=}.
  \end{0-1}
\end{syntax}

where \defnmetaelement{function-definition} is
\begin{syntax}
  \begin{0-1}
    \begin{1=}
      \key{IDENTIFICATION} \\
      \miscext{\key{ID}}
    \end{1=}
    \key{DIVISION}.
  \end{0-1} \newline
  \key{FUNCTION-ID}.
  \begin{1=}
    \metaelement{function-name-1} \\
    \miscext{\literal}
  \end{1=}
  \begin{0-1} \key{AS} \literal \end{0-1}.\newline
  \deleted{
    \begin{0-1}
      \metaelement{comment-paragraphs}
    \end{0-1}
  } \newline
  \begin{0-1}
    \metaelement{environment-division}
  \end{0-1} \newline
  \begin{0-1}
    \metaelement{data-division}
  \end{0-1} \newline
  \begin{0-1}
    \metaelement{procedure-division}
  \end{0-1} \newline
  \key{END} \key{FUNCTION}
  \begin{1=}
    \metaelement{function-name-1} \\
    \miscext{\metaelement{literal-3}}
  \end{1=}.
\end{syntax}

\subsubsection{Syntax rules}

\subsubsection{General rules}

%%% Local Variables:
%%% mode: latex
%%% TeX-master: "grammar.tex"
%%% End: