{"title":"Hermes:用于分布式编程的集成语言和系统","authors":"R. Strom","doi":"10.1109/EDS.1990.138054","DOIUrl":null,"url":null,"abstract":"Hermes is an experimental language for implementing complex systems and distributed applications. It conceals low-level programming details, such as data representation, distribution, communications protocols, and operating system calls, while retaining expressiveness, checkability, and efficiency. Hermes supports multiple interacting applications and services within a single environment. Applications and services interact by making calls and passing typed parameters-exactly the same way modules interact within an application. The syntax and semantics of interaction are uniform, regardless of whether the interacting components are local or remote and whether they belong to the same user or to different users. The distinctive features of Hermes are processes as the basic units of modularity and interaction, ports as capabilities, a representation-independent pointerless type system, and compile-time checking which enforces protection on the granularity of a module. The concept of a multiapplication environment is discussed.<<ETX>>","PeriodicalId":443013,"journal":{"name":"IEEE Workshop on Experimental Distributed Systems","volume":"71 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1990-10-11","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"18","resultStr":"{\"title\":\"Hermes: an integrated language and system for distributed programming\",\"authors\":\"R. Strom\",\"doi\":\"10.1109/EDS.1990.138054\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Hermes is an experimental language for implementing complex systems and distributed applications. It conceals low-level programming details, such as data representation, distribution, communications protocols, and operating system calls, while retaining expressiveness, checkability, and efficiency. Hermes supports multiple interacting applications and services within a single environment. Applications and services interact by making calls and passing typed parameters-exactly the same way modules interact within an application. The syntax and semantics of interaction are uniform, regardless of whether the interacting components are local or remote and whether they belong to the same user or to different users. The distinctive features of Hermes are processes as the basic units of modularity and interaction, ports as capabilities, a representation-independent pointerless type system, and compile-time checking which enforces protection on the granularity of a module. The concept of a multiapplication environment is discussed.<<ETX>>\",\"PeriodicalId\":443013,\"journal\":{\"name\":\"IEEE Workshop on Experimental Distributed Systems\",\"volume\":\"71 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"1990-10-11\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"18\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"IEEE Workshop on Experimental Distributed Systems\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/EDS.1990.138054\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"IEEE Workshop on Experimental Distributed Systems","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/EDS.1990.138054","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Hermes: an integrated language and system for distributed programming
Hermes is an experimental language for implementing complex systems and distributed applications. It conceals low-level programming details, such as data representation, distribution, communications protocols, and operating system calls, while retaining expressiveness, checkability, and efficiency. Hermes supports multiple interacting applications and services within a single environment. Applications and services interact by making calls and passing typed parameters-exactly the same way modules interact within an application. The syntax and semantics of interaction are uniform, regardless of whether the interacting components are local or remote and whether they belong to the same user or to different users. The distinctive features of Hermes are processes as the basic units of modularity and interaction, ports as capabilities, a representation-independent pointerless type system, and compile-time checking which enforces protection on the granularity of a module. The concept of a multiapplication environment is discussed.<>