Lucid, a nonprocedural language with iteration

  • Authors:
  • E. A. Ashcroft;W. W. Wadge

  • Affiliations:
  • Univ. of Waterloo, Waterloo, Ont., Canada;Univ. of Warwick, Warwickshire, England

  • Venue:
  • Communications of the ACM
  • Year:
  • 1977

Quantified Score

Hi-index 48.24

Visualization

Abstract

Lucid is a formal system in which programs can be written and proofs of programs carried out. The proofs are particularly easy to follow and straightforward to produce because the statements in a Lucid program are simply axioms from which the proof proceeds by (almost) conventional logical reasoning, with the help of a few axioms and rules of inference for the special Lucid functions. As a programming language, Lucid is unconventional because, among other things, the order of statements is irrelevant and assignment statements are equations. Nevertheless, Lucid programs need not look much different than iterative programs in a conventional structured programming language using assignment and conditional statements and loops.