历史大全

1987年,Self高级语言发表,是一种基于原型的面向对象程序设计语言

芝麻汤圆
01月20日 11:08
此文约为795字,阅读需要3分钟

Self语言,是一种基于原型的面向对象的程序设计语言,于1986年由施乐帕洛阿尔托研究中心的David Ungar和Randy Smith给出了最初的设计。 Self语言是在Smalltalk的基础上发展而来,沿用了Smalltalk中一切都是对象的风格。

1987年,Self高级语言发表,是一种基于原型的面向对象程序设计语言

扩展阅读

Self语言把概念上的精简作为设计原则。

  1. 它取消了类的概念,只有对象的概念,同时把消息作为最基本的操作。
  2. 把对象的属性理解为获取或更改属性这两种方法,从而把属性的概念简化为方法。
  3. 取消了变量和赋值,替代它们的是通过消息来读槽和写槽。

在发展Self的过程中,Self的设计研究人员也探索了Self的程序设计。他们提出了特质的概念,用对象实现了名字(对象名或方法名)的管理,用动态绑定实现了委托。

Self同Smalltalk一样既是一个编程语言,也是一个集成开发环境和运行环境。

在Self中对象创建对象的方式是自我拷贝,所以叫做原型。

Self是原型面向对象语言的鼻祖,就像SIMUAL 67是类面向对象语的鼻祖。

发展历程

  • 1986年,David Ungar和Randy Smith在施乐帕洛阿托研究中心提出Self语言的最初设计提出。
  • 1987年,在OOPSLA'87的论文SELF: The Power of Simplicity上给出了描述。
  • 1987年初Craig Chambers, Elgin Lee 和 Martin Rinard在Smalltalk 上给出了Self的第一个实验性解释器。
  • 1987年夏Self项目在Stanford大学正式开始,1988年夏给出了第一个有效率的实现,发布Self 1.0和1.1两个版本。在第一个版本中包括内存管理系统和编译器。
  • 1991年初,Self项目移至Sun Microsystems Laboratories Inc. ,并且在1992年发布了2.0版。在第二个版本中采用了新的编译技术,并引入了多重继承。
  • 1993年1月,Self 3.0版发布。在这个版本中包括了一个实验性的图形用户界面,简化了上个版本中多重继承的设计,引入了可见性概念,并采用了更新的编译技术。
  • 1995年7月,Self 4.0版发布。在这个版本中包括了一个全新的图形用户环境Morphic,提供了工具transporter用于保存对象,改进了虚拟机,改善了内存管理,在环境的层次上引入了模块的概念,取消了语言层次上的可见性概念。
  • 1995年之后,Self的发展基本已经停滞,但在发展Self过程中探索出的一些技术在别的系统中得到了应用。在Self的实现中采用的各种编译优化技术直接导致了Java Hotspot虚拟机的产生;在 Smalltalk的一个实现Squeak中采用了Self图形用户界面Morphic的设计方案,放弃了标准 Smalltalk中采用的MVC的方案。

发表评论
评论列表
共0条
点击加载更多