From arnor!strom@uunet.UU.NET Fri Mar 22 02:09:56 1991 From: arnor!strom@uunet.UU.NET (Rob Strom) Newsgroups: comp.os.research Subject: Hermes textbook is now available Date: 15 Mar 91 19:20:39 GMT Organization: IBM Research A textbook for the Hermes distributed programming language is now available: Strom, Bacon, Goldberg, Lowry, Yellin, Yemini. Hermes: A Language for Distributed Computing. Prentice-Hall, Englewood Cliffs, NJ. 1991. ISBN: O-13-389537-8. The book contains: o A tutorial which introduces users to Hermes, and guides them through a set of practical examples of constructing dynamic distributed systems. o A reference manual containing precise definitions and illustrative examples for each language construct. o Appendices containing the rules of Hermes in the same machine-readable format that is used to produce the compiler itself. o Instructions on how to obtain a free copy of Hermes for non-commercial use. The Hermes book can be obtained from your local bookstore, or by writing to: Prentice Hall 200 Old Tappan Road Old Tappan, NJ 07675 or by calling (201) 767-5937, or (800) 922-0579. 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. A Hermes implementation for IBM RT or RISC System/6000, or Sun 3 or 4, can be obtained free of charge by sending mail to hermes-request@ibm.com, or by filling out the tear-out business reply card in the back of the book. An electronic distribution is also available via anonymous ftp from software.watson.ibm.com (IP address 129.34.139.5). The Hermes system is for experimental, non-commercial use only. (See our earlier posting on Hermes availability). We believe Hermes may be useful in courses on programming languages, distributed systems, or software engineering. Several professors are currently using Hermes in their courses. If you are planning to use Hermes in a course, we would be interested in hearing from you. -- Rob Strom, strom@ibm.com, (914) 784-7641 IBM Research, 30 Saw Mill River Road, P.O. Box 704, Yorktown Heights, NY 10958