VMS Help
PASCAL, Compilation Units

 *Conan The Librarian (sorry for the slow response - running on an old VAX)

  A compilation unit is a unit of Compaq Pascal code that  can  be
  compiled independently; the term refers to either a program or a
  module.  Both programs and modules have declaration sections but
  only  programs  have  executable  sections.   A  program  can be
  compiled, linked, and run by itself,  but  a  module  cannot  be
  executed  unless  it  is  linked  with a main program written in
  PASCAL, or another  language.   A  module  may  contain  routine
  declarations  but  these  cannot  be executed independently of a
  program.

  1 - PROGRAM

  A program is a set of instructions  that  can  be  compiled  and
  executed by itself.

  Syntax:

     [[attribute-list]]
     PROGRAM comp-unit-identifier [[({file-identifier},...)]];
       [[declaration-section]]
       BEGIN
       {statement};...
       END.

  The 'attribute-list' is one or  more  identifiers  that  provide
  additional information about the compilation unit.

  The 'comp-unit-identifier' specifies the name  of  the  program.
  The  identifier  appears  only  in  the heading and has no other
  purpose within the compilation unit.

  The 'file-identifier' specifies the names of any file  variables
  associated with the external files used by the compilation unit.

  The  'declaration-section'  is  a  Compaq   Pascal   declaration
  section.

  The 'statement' is any Compaq Pascal statement.

  The program  heading  includes  all  information  preceding  the
  program  block.   If  your  program contains any input or output
  routines, you must list all the external file variables that you
  are  using  in  the  compilation unit's heading.  File variables
  listed in a heading must also be declared locally in the  block,
  except for the predeclared file variables INPUT, OUTPUT, or ERR.

  The INPUT identifier corresponds to a predefined  external  file
  that  accepts  input  from  the  default  device  (usually, your
  terminal); the OUTPUT identifier  corresponds  to  a  predefined
  external  file that sends output to the default device (usually,
  your terminal); the ERR identifier corresponds to  a  predefined
  external  file  that  sends error messages to the default device
  (usually your terminal).  If you redeclare INPUT, OUTPUT, or ERR
  in a nested block, you lose access to the default input, output,
  and error devices.

  2 - MODULE

  A module is a set of instructions that can be compiled, but  not
  executed,  by  itself.  Module blocks contain only a declaration
  section and TO BEGIN DO and TO END DO sections.

  Syntax:

     [[attribute-list]]
     MODULE comp-unit-identifier [[({file-identifier},...)]];
       [[declaration-section]]
       [[TO BEGIN DO statement;]]
       [[TO END DO statement;]]
       END.

  The 'attribute-list' is one or  more  identifiers  that  provide
  additional information about the compilation unit.

  The 'comp-unit-identifier' specifies the name  of  the  program.
  The  identifier  appears  only  in  the heading and has no other
  purpose within the compilation unit.

  The 'file-identifier' specifies the names of any file  variables
  associated with the external files used by the compilation unit.

  The  'declaration-section'  is  a  Compaq   Pascal   declaration
  section.

  The 'statement' is any Compaq Pascal statement.

  Each module must  be  in  a  separate  file;  you  cannot  place
  multiple  modules  (or a module and a program) in the same file.
  You can compile modules and a  program  together  or  separately
  (the  syntax  of  compilation  depends  on  the operating system
  command-line interpreter you are using).

  The module syntax of Compaq Pascal is  slightly  different  than
  that   of  Extended  Pascal.   However,  the  concepts  in  both
  languages are the same.

  The module heading includes all information preceding the module
  block.   If  your program contains any input or output routines,
  you must list all the external file variables that you are using
  in  the  compilation unit's heading.  File variables listed in a
  heading must also be declared locally in the block,  except  for
  the predeclared file variables INPUT, OUTPUT, and ERR.

  The INPUT identifier corresponds to a predefined  external  file
  that  accepts  input  from  the  default  device  (usually, your
  terminal); the OUTPUT identifier  corresponds  to  a  predefined
  external  file that sends output to the default device (usually,
  your terminal); the ERR identifier corresponds to  a  predefined
  external  file  that  sends error messages to the default device
  (usually your terminal).  If you redeclare INPUT, OUTPUT, or ERR
  in a nested block, you lose access to the default input, output,
  and error devices.
  Close     HLB-list     TLB-list     Help  

[legal] [privacy] [GNU] [policy] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.