引用本文:QIAN Zhen-yu,Besma Abd Moulah.结合面向对象和函数式语言的概念.软件学报,2000,11(1):8-22
【打印本页】   【下载PDF全文】   查看/发表评论  【EndNote】   【RefMan】   【BibTex】
←前一篇|后一篇→ 过刊浏览    高级检索
本文已被:浏览 4228次   下载 6314 本文二维码信息
码上扫一扫!
分享到: 微信 更多
结合面向对象和函数式语言的概念
QIAN Zhen-yu1, Besma Abd Moulah1
Universit?t Bremen Germany
摘要:
考虑了结合面向对象和函数式程序风范的问题.与这一方向的大多数方法相比,这种结合方法有下面两个优点:首先,结合了在广泛流行的几种主语言中非常有名的一些重要概念.换言之,没有引入新的语言概念并试图以新的概念为基础解释众所周知的语言概念.其次,这种结合具有下面的性质:如果整个语言以传统方式使用则不受个别的语言概念的影响,这样,只有在使用一个语言概念的时候才需要关注它.具体地说,提出了一个具有简明操作语言的用于函数式面向对象程序设计的核心语言,它具有如上所述的性质.这个核心语言结合了Eiffel, Java, ML和Haskell语言中的下列核心语言概念:对象,类,多重继承,方法重定义,动态绑定,静态类型安全性,二元方法,代数数据类型,高阶函数,ML-多态性.
关键词:  面向对象程序设计,多重集成,方法重定义,动态绑定,静态类型安全性,二元方法,函数式程序设计,代数数据类型,高阶函数,ML-多态性.
DOI:
分类号:
基金项目:
Combining OO and Functional Language Concepts
QIAN Zhen-yu,Besma Abd Moulah
Abstract:
This paper considers the problem of combining the object-oriented and functional programming paradigms. Compared with most of the approaches in this direction, the combination has the following two advantages. First, the authors combine several important concepts as they are well known in widespread mainstream languages. In other words, the authors do not introduce new language concepts but try to interpret well-known language concepts based on the new ones. Second, the combination has the property that individual language concepts do not influence the whole language to the extent as they do traditionally, so that usually one needs to pay for a language concept only when he uses it. Concretely, a core language for functional object-oriented programming together with a straightforward operational semantics is proposed, where the properties mentioned above hold. The core language combines the following key language concepts from the languages Eiffel, Java, ML and Haskell:objects, classes, multiple inheritance, method redefinition, dynamic binding, static type safety, binary methods, algebraic data types, higher-order functions, ML-polymorphism.
Key words:  Object-Oriented programming, multiple inheritance, method redefinition, dynamic binding, static type safety, binary methods, functional programming, algebraic data types, higher-order functions, ML-polymorphism.

引用本文:
【打印本页】   【下载PDF全文】   查看/发表评论  【EndNote】   【RefMan】   【BibTex】
←前一篇|后一篇→ 过刊浏览    高级检索
本文已被:浏览次   下载  
分享到: 微信 更多
摘要:
关键词:  
DOI:
分类号:
基金项目:
Abstract:
Key words: