Mesa (programming language)

Mesa[1]
Designed byComputer Systems Laboratory (CSL)
DeveloperXerox PARC
First appeared1976; 48 years ago (1976)[2]
Stable release
Mesa 6.0 (Version 41) / July 1981; 43 years ago (1981-07)
Typing disciplineStrong, static
Influenced by
ALGOL
Influenced
Java, Modula-2, Cedar, PostScript[3]

Mesa[1] is a programming language developed in the mid 1970s at the Xerox Palo Alto Research Center in Palo Alto, California, United States. The language name was a pun based upon the programming language catchphrases of the time, because Mesa is a "high level" programming language.

Mesa is an ALGOL-like language with strong support for modular programming. Every library module has at least two source files: a definitions file specifying the library's interface plus one or more program files specifying the implementation of the procedures in the interface.[4] To use a library, a program or higher-level library must "import" the definitions. The Mesa compiler type-checks all uses of imported entities; this combination of separate compilation with type-checking was unusual at the time.[citation needed]

Mesa introduced several other innovations in language design and implementation, notably in the handling of software exceptions, thread synchronization, and incremental compilation.

Mesa was developed on the Xerox Alto, one of the first personal computers with a graphical user interface, however, most of the Alto's system software was written in BCPL. Mesa was the system programming language of the later Xerox Star workstations, and for the GlobalView desktop environment. Xerox PARC later developed Cedar, which was a superset of Mesa.

Mesa and Cedar had a major influence on the design of other important languages, such as Modula-2 and Java, and was an important vehicle for the development and dissemination of the fundamentals of GUIs, networked environments, and the other advances Xerox contributed to the field of computer science.

  1. ^ a b Mitchell, James G.; Maybury, William; Sweet, Richard (1979): Mesa Language Manual - version 5.0" XEROX PARC, Computer Systems Laboratory (CSL), Technical Report CSL-79-3. Online copy at www.bitsavers.org, accessed on 2019-05-15.
  2. ^ Mesa, Software Preservation Group
  3. ^ Perry, T.S. (May 1988). "'PostScript' prints anything: a case history". IEEE Spectrum. 25 (5): 42–46. doi:10.1109/6.4550. S2CID 33376390.
  4. ^ Mesa Language Manual, chapter 7. (The Manual uses the term module to mean a source file.)