H ? « »

Language peer sets for Hermes:
United States
United States/1990
Designed 1990
1990s languages
Fifth generation
Post-Cold War


alternate simple view
Country: United States
Designed 1990
Published: 1990

IBM, June 1990. An imperative, strongly typed process-oriented language for complex distributed systems. A follow-on effort to NIL[2]. Threads, relational tables, typestate checking, capability-based access, dynamic configuration.

Hermes is a secure, very high-level language for programming
distributed and multi-application systems.  To the Hermes programmer,
a system looks like a collection of active modules (processes), each
containing a sequential program, and data.  The data consists of
computational data (scalars, tuples, and sets),input ports, and output
ports.  All data is strongly typed.  Programs interact by making calls
on output ports, receiving calls on input ports, and returning calls.
Programs can dynamically create new processes and control the bindings
of output ports to input ports.  Programmers do not explicitly see the
physical representation of data or the location of processes.
Therefore the programmer is shielded from the details of data formats,
operating system interfaces, and communications protocols.  
The Hermes process paradigm subsumes all the advantages of
"object-based" approaches to modularity and information hiding.
Hermes incorporates a secure, language-based approach to creating
multi-applications --- dynamically evolving systems containing
multiple active, interacting applications.  Hermes was
developed in the Distributed Systems Software Technology group at the
IBM T.J. Watson Research Center

  • R. Strom et al, (1991) R. Strom et al, "Hermes: A Language for Distributed Computing", P-H 1991, ISBN 0-13-389537-8.
  • D. J. Taylor. (1992) D. J. Taylor. "A prototype debugger for Hermes." Proceedings of the 1992 CAS Conference (CASCON '92), Toronto, November 9-12, 1992. Volume I, pp. 29-42. (Also Volume II, pp. 313-326.)
  • (2002) Library of Congress Subject Headings H47
    Search in: Google  Google scholar  World Cat  Yahoo  Overture  DBLP  Monash bib  NZ  IEEE  ACM portal  CiteSeer  CSB  ncstrl  jstor  Bookfinder