A calculus for reasoning about software composition

被引:12
作者
Achermann, F [1 ]
Nierstrasz, O [1 ]
机构
[1] Univ Bern, Software Composit Grp, CH-3012 Bern, Switzerland
关键词
software components; process calculi; software architecture;
D O I
10.1016/j.tcs.2004.09.022
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Although the term software component has become commonplace, there is no universally accepted definition of the term, nor does there exist a common foundation for specifying various kinds of components and their compositions. We propose such a foundation. The Piccola calculus is a process calculus, based on the asynchronous pi-calculus, extended with explicit namespaces. The calculus is high level, rather than minimal, and is consequently convenient for expressing and reasoning about software components, and different styles of composition. We motivate and present the calculus, and outline how it is used to specify the semantics of Piccola, a small composition language. We demonstrate how the calculus can be used to simplify compositions by partial evaluation, and we briefly outline some other applications of the calculus to reasoning about compositional styles. (C) 2004 Elsevier B.V. All rights reserved.
引用
收藏
页码:367 / 396
页数:30
相关论文
共 56 条
[1]  
Abadi M., 1991, Journal of Functional Programming, V1, P375, DOI 10.1017/S0956796800000186
[2]  
Achermann F, 2001, LECT NOTES COMPUT SC, V1897, P77
[3]  
Achermann F, 2000, LECT NOTES COMPUT SC, V1906, P19
[4]  
ACHERMANN F, 2001, FORMAL METHODS DISTR, P403
[5]  
ACHERMANN F, 2002, THESIS U BERNE
[6]  
Achermann F., 2001, SOFTWARE ARCHITECTUR, P261
[7]  
Arbab F, 2002, LECT NOTES COMPUT SC, V2315, P22
[8]  
Asai K., 1997, Proceedings of the ACM SIGPLAN Symposium on Partial Evaluation and Semantics-Based Program Manipulation, PEPM '97, P12, DOI 10.1145/258993.258997
[9]   THE CHEMICAL ABSTRACT MACHINE [J].
BERRY, G ;
BOUDOL, G .
THEORETICAL COMPUTER SCIENCE, 1992, 96 (01) :217-248
[10]  
BOUDOL G, 1997, POPL 97, P228