Jump to content

Hermes (programming language)

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Daira Emma Hopwood (talk | contribs) at 23:59, 27 August 2009 (initial 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)

Hermes is a language for distributed programming that was developed at IBM's Thomas J. Watson Research Center from 1986 through 1992. Hermes' most interesting features included [1]:

  1. Language support of processes and interprocess communication.
  2. Compile-time verification that operations use initialized data.
  3. Representation-independent data aggregates called tables.
  4. Lack of pointers.

The compile-time checking of data initialization, called "typestate analysis", is an early precedent for the definite assignment analysis performed by Java and the Common Language Runtime. Hermes and its predecessor, NIL, appear to have been the earliest programming languages supporting this form of initialization checking.

References

  1. ^ "Hermes Language Experiences". Willard Korfhage and Arthur P. Goldberg. Software — Practice and Experience, Vol. 25(4), 389–402 (April 1995). [1]