Smalltalk

✍ dations ◷ 2025-11-15 18:30:37 #面向对象的编程语言,基于类的编程语言,Smalltalk编程语言家族,1972年创建的编程语言

Smalltalk是一种面向对象的、动态类型的编程语言。Smalltalk由艾伦·凯,Dan Ingalls,Ted Kaehler,Adele Goldberg等于70年代初在Xerox PARC开发。

Smalltalk对其它众多的程序设计语言的产生起到了极大的推动作用,主要有:C++,C#,Objective-C,Actor,Java和Ruby等。90年代的许多软件开发思想得利于Smalltalk,例如设计模式、敏捷编程和代码重构等。

Smalltalk和许多程序设计语言不同,它不仅仅是一门语言。下面从几个不同的角度来解释Smalltalk。

在Smalltalk中所有的东西都是对象,或者应该被当作对象处理。例如下面的表达式:

2 + 3.

应当被理解为:向对象2发送消息+,参数为对象3。

纯面向对象使得Smalltalk在语言结构方面有许多与其他语言不同的特点,例如在Smalltalk语言中没有条件语句,取而代之的是一些发送给对象true或者false的消息,因此它们不属于语言部分,而属于Smalltalk的类库;也没有循环重复语句(C语言中的for, while),Smalltalk用向数字对象或块对象发送消息来实现重复执行。

最早的Smalltalk原型由艾伦·凯于70年代初提出。类(来自Simula-67)、海龟绘图(来自MIT的LOGO)以及图形界面等概念的有机组合,构成了Smalltalk的最初的蓝图。

在1971年到1975年之间,艾伦·凯在Xerox PARC的小组设计并实现了第一个真正的Smalltalk语言系统,编译器由Dan Ingalls负责主要实现。这个系统具有以下几个技术创新:

开发环境的革新相当迅速。虽然当时的位图显示器十分昂贵,但是艾伦·凯却说服了PARC让他使用这些位图显示器,这使得艾伦·凯和他的小组能够实现不同大小和字体的文字,使用多窗口环境,以及一些对图像处理的高端支持。

1975-76年间,艾伦·凯小组认识到应当对执行效率和规模进行优化。于是他们在许多重要方面重新设计了Smalltalk系统,在语言上:

前述的所有Smalltalk系统都是在特殊的硬件上实现的,直到1977-78年,Bruce Horn和Ted Kaehler把Smalltalk-76移植到由Intel 8086处理器和自定显示器所组成的硬件环境(被称为NoteTaker)上。虽然这种硬件环境只生产了10台,但是它证明了在通常的处理器上实现Smalltalk的可能性。

在1979-80年,部分受NoteTaker项目的影响,Smalltalk小组的注意力转移到Smalltalk的销售可行性上。小组设计并实现了新一代的Smalltalk系统,这次修改的目标着重于在标准硬件上的移植性等方面,包括:

(15 * 19) + (37 squared)

可以理解为:向15发送消息'*',参数为19;向37发送消息squared;最后向15*19的结果发送消息'+',参数为37 squared的结果。

相关

  • 原核细胞骨架原核细胞骨架(英语:prokaryotic cytoskeleton)是原核生物中所有结构纤维(英语:protein filament)的总称。人们曾经认为,原核生物没有细胞骨架,但随着可视化技术和结构测定的进展,FtsZ
  • 法国传统地区法国传统地区(法语:pays traditionnel de France),或自然区(法语:région naturelle),是具有一定范围、有同种物理特征(如地貌、地质、气候、土壤、水资源)的历史上有着同族人定居及
  • 有胡女性有胡女性,是指女性有像男性一样胡须的实际或假造现象,近来也成为政治宣示或时尚宣示。这是一种存在人类中,极其罕见的人体现象。有时,打睾酮的女性也会长胡子。
  • 十万个冷笑话封面《十万个冷笑话》是一部连载中的动漫,作者为寒舞,2010年6月28日起漫画在有妖气上连载。作者原构想为以后画正式漫画前作练习之用,至《葫芦篇》曾停止连载,从《世界末日篇》
  • 余鹍翔余鹍翔(1603年-1654年1月15日),字诞北,湖广辰州府辰溪县人,明朝、南明政治人物。余鹍翔是天启四年(1624年)的举人,天启五年(1625年)联捷进士,授金谿知县,惩治侵吞官府金钱的县吏朋党,又突
  • Mirai AkariMirai Akari(日语:ミライアカリ),日本虚拟YouTuber,其与绊爱、电脑少女小白、辉夜月、バーチャルのじゃロリ狐娘Youtuberおじさん并称为“虚拟Youtuber四天王”。2019年12月16日,
  • 黄觉 (越南音乐家)黄觉(越南语:Hoàng Giác,1924年-2017年9月14日),是越南音乐家。籍贯河内市北慈廉郡瑞芳坊,1924年出生。黄觉就读于当时著名的柚学校(朱文安高中)。与他同班的许多同学后成为著名音
  • 杰米·坎贝尔·鲍尔詹姆斯·麦卡夫·“杰米”·坎贝尔·鲍尔(英语:James Metcalfe "Jamie" Campbell Bower,1988年11月22日-),英格兰男演员、歌手和模特儿。出演过较著名的作品为电影《理发师陶德》(2
  • 顾方济顾方济(Bishop François-Xavier-Timothée Danicourt C.M.,1806年3月18日-1860年2月2日)法国遣使会会士,担任天主教浙江代牧(1850-1854)、天主教江西代牧(1854-1860年)。1806年3月18
  • 晋 (五代)晋(907年-923年)中国五代十国时代以太原为中心于现在山西地区的割据政权,由沙陀人李克用建立。部分史学家称其为河东或前晋,与后晋相对应。唐朝乾宁二年十二月(合896年),在黄巢之乱