Jump to content

Pastel (programming language)

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Pointillist (talk | contribs) at 23:34, 1 February 2014 (create page as stub). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
(diff) ← Previous revision | Latest revision (diff) | Newer revision → (diff)

Pastel is an extended version of the Pascal programming language, created in c. 1982 for Amber, an operating system for the S-1 supercomputer project at Lawrence Livermore National Laboratory in California.[1]

Pastel was conceived by Jeffrey M. Broughton, then Project Engineer in charge of compilers and operating system software for the S-1 project,[2] because of dissatisfaction with the PL/1 language in which Amber was being implemented. The language was named Pastel ("an off-color Pascal") and was the inspiration for Richard Stallman's GNU C compiler.[3] Compared with Pascal compilers of that period, Pastel's features included:[4]

  • Improved type definition
  • Parametric types
  • Explicit packing and allocation control
  • Additional parameter passing modes
  • Additional control constructs
  • Set iteration
  • Loop-exit form
  • Return statement
  • Module definition
  • Exception handling
  • General enhancements
  • Conditional boolean operations
  • Constant expressions
  • Variable initialization

References

  1. ^ Mark Smotherman. "S-1 Supercomputer (1975-1988)". Archived from the original on 2014-02-01.
  2. ^ Mark Smotherman (last updated June 28, 2005). "S-1 Supercomputer Alumni". Archived from the original on 2014-02-01. {{cite web}}: Check date values in: |date= (help)
  3. ^ Frankston, Charles (1984). "6 Implementation". The Amber Operating System (Thesis). MIT. Retrieved 2014-02-01.
  4. ^ Jeff Broughton. http://archive.org/stream/bitsavers_llnls1S1Op_10037358/S1_OpenHouse_Apr85_djvu.txt. Retrieved 2014-02-1. {{cite web}}: |chapter= ignored (help); Check date values in: |accessdate= (help); Missing or empty |title= (help)