Unit

Pascal Syntax

Abstract

The unit is the mechanism for modularization of a Pascal program; it is written and compiled separately from the main program.

Syntax

Syntax Diagram


Unit Syntax Diagram
Unit Heading Syntax Diagram
Unit Name Syntax Diagram
Interface Section Syntax Diagram
Interface Declaration Section Syntax Diagram
Uses Statement Syntax Diagram
Implementation Section Syntax Diagram
Implementation Declaration Section Syntax Diagram
Initialiation Section Syntax Diagram

BNF

<unit>
::= <unit-heading> ';' <interface-section> ';' <implemntation-section> ';' <initialization-section> '.'
<unit-heading>
::= 'UNIT' <unit-name>
<unit-name>
::= <identifier>
<interface-section>
::= 'INTERFACE' <interface-declaration-list>
<interface-declaration>
::= <constant-section>
::= <function-declaration>
::= <procedure-declaration>
::= <type-section>
::= <variable-section>
<implementation-section>
::= 'IMPLEMENTATION' <implementation-declaration-list>
<implementation-declaration>
::= <constant-section>
::= <function-definition>
::= <label-section>
::= <procedure-definition>
::= <type-section>
::= <variable-section>
<initialization-section>
::= 'END'
::= <compound-statement>

EBNF

<unit>
::= <unit-heading> ';' <interface-section> ';' <implemntation-section> ';' <initialization-section> '.'
<unit-heading>
::= 'UNIT' <unit-name>
<unit-name>
::= <identifier>
<interface-section>
::= 'INTERFACE' <interface-declaration> *
<interface-declaration>
::= <constant-section>
|  <function-declaration>
|  <procedure-declaration>
|  <type-section>
|  <variable-section>
<implementation-section>
::= 'IMPLEMENTATION' <implementation-declaration> *
<implementation-declaration>
::= <constant-declaration-section>
|  <function-definition>
|  <label-declaration-section>
|  <procedure-definition>
|  <type-declaration-section>
|  <variable-declaration-section>
<initialization-section>
::= <compound-statement>
'END'

Semantics

Remarks

See Also

Compound Statement <compound-statement>
Program <program>