Mesa (programming language)

related topics
{system, computer, user}
{math, number, function}
{language, word, form}
{service, military, aircraft}

Mesa was an innovative programming language developed in the late 1970s at the Xerox Palo Alto Research Center in Palo Alto, California, United States.[1] The language was named after the mesas of the American Southwest, referring to its design intent to be 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.[2] 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.

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

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 developed Cedar, which was based on Mesa, with a number of additions including garbage collection, better string support, called Ropes, and a native compiler for Sun SPARC workstations.

Mesa 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.

Contents

Full article ▸

related documents
OS-9
EPOC (computing)
Webmail
Modified AMI code
JPEG Network Graphics
Motorola 68010
Sorcerer (operating system)
Intel 8088
SoftICE
File archiver
Connectionless mode transmission
Tru64 UNIX
Microsoft PowerPoint
MIDI timecode
CLIÉ
Single-frequency signaling
Helix (project)
Xenix
Yet another Setup Tool
Render farm
Killer poke
DALnet
Carrier sense multiple access with collision avoidance
ActiveX
Data terminal equipment
Au file format
CD-i
NMOS logic
Bugzilla
Gzip