一种带有delegation的对象演算  

Φ Calculus: An Object Calculus with Delegation

在线阅读下载全文

作  者:杨群[1] 陈宏兵[1] 许满武[1] 

机构地区:[1]南京大学软件新技术国家重点实验室

出  处:《计算机科学》2007年第4期250-253,共4页Computer Science

基  金:江苏省科技攻关项目(BE2003064)资助

摘  要:随着研究与应用的深入,传统的基于类的面向对象语言对动态变化要求的支持不足越来越明显。而且,由于软件系统复杂性的不断提高,这个问题变得更加突出。近年来,人们一直在进行着各种研究和尝试,寻求解决办法。delegation是一种在基于原型的面向对象语言中实现的对象动态继承,由于它支持对象行为在运行期动态改变,能提供对象动态扩展功能的能力,因此探讨如何在基于类的面向对象语言中引入delegation成分,以提供软件运行时刻的结构与行为变更能力,是十分有意义的。本文提出了一种命令式、带有delegation的Φ对象演算,以该演算系统刻划程序设计语言的基本特征;通过给出Φ演算的语法和操作语义;详细描述程序中各种操作的实现方法;着重说明在程序语言中引入delegation成分后,对象之间共享方法和对象扩展功能所具有的灵活性和简单性。从而说明在程序语言中引入delegation,以支持软件动态变更是一种有效且可行的途径。Due to the development of more and more large and complex computing systems, software systems are always required to be changed at run-time. However, in the software systems that are developed using the traditional class-based object-oriented languages, this can not be done easily. Nevertheless, delegation, which is a language mechanism supported in prototype-based object-oriented language and enables objects to share methods dynamically, provide a promising method to solve the above problem. Actually, in recent years, delegation is an active research field among programming language researchers. In this paper, we will investigate this language mechanism by presenting Φ calculus. Φ calculus is an imperative object-based calculus. We use it to model essential features of languages, focusing on how to incorporate delegation into programming languages to support dynamic software changing. We give the operational semantics of Φ calculus. We also state how delegation is used in object extending and method sharing between objects. We conclude that delegation is an effective way to dynamic software changes.

关 键 词:基于类的面向对象语言 基于原型的面向对象语言 西对象演算 

分 类 号:TP301.2[自动化与计算机技术—计算机系统结构]

 

参考文献:

正在载入数据...

 

二级参考文献:

正在载入数据...

 

耦合文献:

正在载入数据...

 

引证文献:

正在载入数据...

 

二级引证文献:

正在载入数据...

 

同被引文献:

正在载入数据...

 

相关期刊文献:

正在载入数据...

相关的主题
相关的作者对象
相关的机构对象