###
DOI:
Journal of Software:2000.11(1):8-22

结合面向对象和函数式语言的概念
QIANZhen-yu,BesmaAbdMoulah
(Universit?t Bremen Germany)
Combining OO and Functional Language Concepts
QIAN Zhen-yu,Besma Abd Moulah
()
Abstract
Chart / table
Reference
Similar Articles
Article :Browse 2567   Download 3210
Received:May 06, 1998    Revised:October 30, 1998
> 中文摘要: 考虑了结合面向对象和函数式程序风范的问题.与这一方向的大多数方法相比,这种结合方法有下面两个优点:首先,结合了在广泛流行的几种主语言中非常有名的一些重要概念.换言之,没有引入新的语言概念并试图以新的概念为基础解释众所周知的语言概念.其次,这种结合具有下面的性质:如果整个语言以传统方式使用则不受个别的语言概念的影响,这样,只有在使用一个语言概念的时候才需要关注它.具体地说,提出了一个具有简明操作语言的用于函数式面向对象程序设计的核心语言,它具有如上所述的性质.这个核心语言结合了Eiffel, Java, ML和Haskell语言中的下列核心语言概念:对象,类,多重继承,方法重定义,动态绑定,静态类型安全性,二元方法,代数数据类型,高阶函数,ML-多态性.
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.
文章编号:     中图分类号:    文献标志码:
基金项目:
Foundation items:
Reference text:

QIAN Zhen-yu,Besma Abd Moulah.结合面向对象和函数式语言的概念.软件学报,2000,11(1):8-22

QIAN Zhen-yu,Besma Abd Moulah.Combining OO and Functional Language Concepts.Journal of Software,2000,11(1):8-22