APAREL—A parse-request language

R. M. Balzer, D. J. Farber

Research output: Contribution to journalArticlepeer-review

9 Citations (Scopus)


APAREL is described: this language is an extension to an algorithmic language (PL/I) that provides the pattern-matching capabilities normally found only in special purpose languages such as SNOBOL4 and TMG. This capability is provided through parse-requests stated in a BNF-like format. These parse-requests form their own programming language with special sequencing rules. Upon successfully completing a parse-request, an associated piece of PL/I code is executed. This code has available for use, as normal PL/I strings, the various pieces (at all levels) of the parse. It also has available, as normal PL/I variables, the information concerning which of the various alternatives were successful. Convenient facilities for multiple input-output streams, the initiation of sequences of parse-requests as a subroutine, and parse-time semantic checks are also included. APAREL has proven convenient in building a powerful SYNTAX and FUNCTION macro system, an algebraic language preprocessor debugging system, an on-line command parser, a translator for Dataless Programming, and as a general string manipulator.

Original languageEnglish
Pages (from-to)624-631
Number of pages8
JournalCommunications of the ACM
Issue number11
Publication statusPublished - 1969 Nov 1
Externally publishedYes


  • BNF
  • PL/I
  • parser
  • pattern matching
  • string processing
  • symbol manipulation
  • syntax
  • text processing
  • translator

ASJC Scopus subject areas

  • General Computer Science


Dive into the research topics of 'APAREL—A parse-request language'. Together they form a unique fingerprint.

Cite this