请输入您要查询的百科知识:

 

词条 Hermes (programming language)
释义

  1. References

Hermes[1][2]

is a language for distributed programming[3]

that was developed at IBM's Thomas J. Watson Research Center from 1986 through 1992,

with an open-source compiler and run-time system.[4]

Hermes' primary features included:[5]

  • Language support of processes and interprocess communication.
  • Compile-time verification that operations use initialized data.
  • Representation-independent data aggregates called tables.
  • 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, Cyclone and C#.

Hermes and its predecessor, NIL (Network Implementation Language), were the earliest programming languages supporting this form of initialization checking.[6]

Typestate was actually used more extensively, to generate compiler-inserted "delete" operations.

References

1. ^{{cite book |last=Strom |first1=Robert E. |last2=Bacon |first2=David F |authorlink2=David F. Bacon |last3=Goldberg |first3=Arthur P. |last4=Lowry |first4=Andy |last5=Yellin |first5=Daniel M. |last6=Yemini |first6=Shaula |title=Hermes - A Language for Distributed Computing |location=Englewood Cliffs, NJ, USA |publisher=Prentice-Hall |year=1991 |isbn=978-0-13-389537-7 }}
2. ^{{cite journal|last1=Lowry|first1=Andy|title=The Hermes language in outline form|journal=ACM SIGPLAN Notices|volume=27|issue=8|year=1992|pages=51–70|issn=0362-1340|doi=10.1145/142137.142148}}
3. ^{{cite book|last1=Strom|first1=R.E.|title=IEEE Workshop on Experimental Distributed Systems|chapter=Hermes: an integrated language and system for distributed programming|year=1990|pages=75–82|doi=10.1109/EDS.1990.138054}}
4. ^{{cite conference |last=Bacon |first=David F. |authorlink=David F. Bacon |last2=Lowry |first2=Andy |title=A Portable Run-time System for the Hermes Distributed Programming Language |conference=USENIX Summer Technical Conference |publisher=Usenix Association |place=Anaheim, California, USA |date=1990 |pages=39–50 }}
5. ^{{cite journal|last1=Korfhage|first1=Willard|last2=Goldberg|first2=Arthur P.|title=Hermes language experiences|journal=Software: Practice and Experience|volume=25|issue=4|year=1995|pages=389–402|issn=0038-0644|doi=10.1002/spe.4380250404|url=http://www.cs.ubc.ca/local/reading/proceedings/spe91-95/spe/vol25/issue4/spe950wk.pdf|citeseerx=10.1.1.13.9034}}
6. ^{{cite book|last1=Strom|first1=Robert E.|title=Proceedings of the 10th ACM SIGACT-SIGPLAN symposium on Principles of programming languages - POPL '83|chapter=Mechanisms for compile-time enforcement of security|year=1983|pages=276–284|doi=10.1145/567067.567093|isbn=978-0897910903}}
{{prog-lang-stub}}

3 : Distributed computing|Programming languages|Static program analysis tools

随便看

 

开放百科全书收录14589846条英语、德语、日语等多语种百科知识,基本涵盖了大多数领域的百科知识,是一部内容自由、开放的电子版国际百科全书。

 

Copyright © 2023 OENC.NET All Rights Reserved
京ICP备2021023879号 更新时间:2024/11/12 0:17:54