Supporting software composition at the programming language level

被引:4
作者
Fröhlich, PH
Gal, A
Franz, M
机构
[1] Univ Calif Riverside, Dept Comp Sci & Engn, Riverside, CA 92521 USA
[2] Univ Calif Irvine, Sch Comp & Informat Sci, Irvine, CA USA
基金
美国国家科学基金会;
关键词
component-oriented software development; programming languages; distributed extensibility; language paradigms beyond object-oriented programming;
D O I
10.1016/j.scico.2004.11.004
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
We are in the midst of a paradigm shift toward component-oriented software development, and significant progress has been made in understanding and harnessing this new paradigm. Oddly enough. however, the new paradigm does not currently extend to the level at which components themselves are constructed. While we have composition architectures and languages that describe how systems are put together out of atomic program parts, the parts themselves are still constructed on the basis of a previous paradigm: object-oriented programming. We argue that this mismatch impedes the progress of compositional software design: many of the assumptions that underlie object-oriented languages simply do not apply in the open and dynamic contexts of component software environments. What, then, would a programming language that supported component-oriented programming at the smallest granularity look like? Lagoona, our project to develop such a language, tries to answer this question. This paper motivates the key concepts behind Lagoona and briefly describes their realization (using Lagoona itself as the implementation language) in the context of Microsoft's NET environment. (c) 2004 Elsevier B.V. All rights reserved.
引用
收藏
页码:41 / 57
页数:17
相关论文
共 37 条
[1]  
[Anonymous], FDN COMPONENT BASED
[2]  
[Anonymous], 2002, COMPONENT SOFTWARE B
[3]  
BOBROW DG, 1986, P C OBJ OR PROGR SYS, P17
[4]  
BUCHI M, 1998, P 13 ACM C OBJ OR PR, P362
[5]   ON UNDERSTANDING TYPES, DATA ABSTRACTION, AND POLYMORPHISM. [J].
Cardelli, Luca ;
Wegner, Peter .
Computing surveys, 1985, 17 (04) :471-522
[6]  
CARDELLI L, 1989, 45 SRC
[7]  
Chambers C., 1997, CECIL LANGUAGE SPECI
[8]  
Czarnecki K., 2000, GEN PROGRAMMING METH
[9]  
ELLIS MA, 1990, ANNOTATED C REF MANU
[10]  
FINDLER RB, 1998, P 3 ACM SIGPLAN INT, P94