Object-oriented Programming with Gradual Abstraction

被引:0
作者
Normark, Kurt [1 ]
Thomsen, Lone Leth [1 ]
Thomsen, Bent [1 ]
机构
[1] Aalborg Univ, Dept Comp Sci, Aalborg, Denmark
关键词
Languages; Design; Experimentation; ASL2; objects before classes; weak and strong classification of objects; abstraction steps; Scheme;
D O I
10.1145/2480360.2384583
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
We describe an experimental object-oriented programming language, ASL2, that supports program development by means of a series of abstraction steps. The language allows immediate object construction, and it is possible to use the constructed objects for concrete problem solving tasks. Classes and class hierarchies can be derived from the objects - via gradual abstraction steps. We introduce two levels of object classification, called weak and strong object classification. Strong object classification relies on conventional classes, whereas weak object classification is looser, and less restrictive. As a central mechanism, weakly classified objects are allowed to borrow methods from each other. ASL2 supports class generalization, as a counterpart to class specialization and inheritance in mainstream object-oriented programming languages. The final abstraction step discussed in this paper is a syntactical abstraction step that derives a source file with a syntactical class form.
引用
收藏
页码:41 / 51
页数:11
相关论文
共 34 条
[1]  
[Anonymous], 1985, Structure and Interpretation of Computer Programs
[2]  
[Anonymous], DOMAIN SPECIFIC PROG
[3]  
Barnes D., 2002, OBJECTS 1 JAVA PRACT
[4]  
Bennedsen J., 2007, Proceedings of the Seventh Baltic Sea Conference on Computing Education Research-Volume, V88, P21
[5]  
Bierman G, 2010, LECT NOTES COMPUT SC, V6183, P76, DOI 10.1007/978-3-642-14107-2_5
[6]  
Black A., 2010, P ACM INT C COMP OBJ, P201
[7]   Mirrors: Design principles for meta-level facilities of object-oriented programming languages [J].
Bracha, G ;
Ungar, D .
ACM SIGPLAN NOTICES, 2004, 39 (10) :331-344
[8]  
Bracha G., 2004, OOPSLA04 WORKSH REV
[9]  
Cooper S., 2003, SIGCSE Bulletin, V35, P191, DOI 10.1145/792548.611966
[10]  
Gamma E., 1996, DESIGN PATTERNS ELEM, P395