Hermes (programming language)
Hermes  is a language for distributed programming that was developed at IBM's Thomas J. Watson Research Center from 1986 through 1992, with an open-source compiler and run-time system. Hermes' primary features included:
- Language support of processes and interprocess communication.
- Compile-time verification that operations use initialized data.
- Representation-independent data aggregates called tables.
- Lack of pointers.
Hermes and its predecessor, NIL (Network Implementation Language), were the earliest programming languages supporting this form of initialization checking. Typestate was actually used more extensively, to generate compiler-inserted "delete" operations.
- Strom, Robert E.; Bacon, David F; Goldberg, Arthur P.; Lowry, Andy; Yellin, Daniel M.; Yemini, Shaula (1991). Hermes - A Language for Distributed Computing. Englewood Cliffs, NJ, USA: Prentice-Hall. ISBN 978-0-13-389537-7.
- Lowry, Andy (1992). "The Hermes language in outline form". ACM SIGPLAN Notices. 27 (8): 51–70. doi:10.1145/142137.142148. ISSN 0362-1340.
- Strom, R.E. (1990). "Hermes: an integrated language and system for distributed programming": 75–82. doi:10.1109/EDS.1990.138054.
- Bacon, David F.; Lowry, Andy (1990). A Portable Run-time System for the Hermes Distributed Programming Language. USENIX Summer Technical Conference. Anaheim, California, USA: Usenix Association. pp. 39–50.
- Korfhage, Willard; Goldberg, Arthur P. (1995). "Hermes language experiences" (PDF). Software: Practice and Experience. 25 (4): 389–402. doi:10.1002/spe.4380250404. ISSN 0038-0644.
- Strom, Robert E. (1983). "Mechanisms for compile-time enforcement of security": 276–284. doi:10.1145/567067.567093.
|This programming-language-related article is a stub. You can help Wikipedia by expanding it.|