文档详情

Language primitives and type discipline for structured communication-based programming.pdf

发布:2017-04-10约6.29万字共19页下载文档
文本预览下载声明
LANGUAGE PRIMITIVES AND TYPE DISCIPLINE FOR STRUCTURED COMMUNICATION-BASED PROGRAMMING KOHEI HONDA?, VASCO T. VASCONCELOS?, AND MAKOTO KUBO? Abstract. We introduce basic language constructs and a type discipline as a foun- dation of structured communication-based concurrent programming. The constructs, which are easily translatable into the summation-less asynchronous π-calculus, allow programmers to organise programs as a combination of multiple flows of (possibly unbounded) reciprocal interactions in a simple and elegant way, subsuming the pre- ceding communication primitives such as method invocation and rendez-vous. The resulting syntactic structure is exploited by a type discipline a? la ML, which offers a high-level type abstraction of interactive behaviours of programs as well as guar- anteeing the compatibility of interaction patterns between processes in a well-typed program. After presenting the formal semantics, the use of language constructs is illustrated through examples, and the basic syntactic results of the type discipline are established. Implementation concerns are also addressed. 1. Introduction Recently, significance of programming practice based on communication among pro- cesses is rapidly increasing by the development of networked computing. From network protocols over the Internet to server-client systems in local area networks to distributed applications in the world wide web to interaction between mobile robots to a global banking system, the execution of complex, reciprocal communication among multiple processes becomes an important element in the achievement of the goals of applica- tions. Many programming languages and formalisms have been proposed so far for the description of software based on communication. As programming languages, we have CSP [9], Ada [33], languages based on Actors [2], POOL [4], ABCL [39], Concurrent Smalltalk [38], or more recently Pict and other π-calculus-based languages [7, 27, 34, 13]. As formalisms, we have
显示全部
相似文档