in

Simula – 指南:历史,起源和更多

关于simula的关键要点:

  • 从历史上看,simula被认为是第一个面向对象编程(oop)语言。
  • simula这个名字是从两种模拟编程语言中获取的。
  • 这个oop是在1962年创建的,用于模拟。

什么是simula:解释

simula是simulation language的缩写,是由挪威开发者ole-johan dahl和kristen nygaard于1962年创建的第一个面向对象编程语言,用于确定如何将程序模拟成计算机用户所看到的世界。

据it专家称,simula改变了编程语言的叙述方式,将其设计为围绕对象而不是线性函数或过程。使用这种面向对象编程语言,对象可以通过消息进行通信,模拟了接收者和发送者的传统概念。

快速事实

创建者(人)
ole-johan dahl和kristen nygaard
发布日期
1967年06月05日
操作系统
类unix,windows,z/os,tops-10,mvs
开发公司
挪威计算中心(norwegian computing center)位于奥斯陆。

它的主要特点是它可以作为特殊应用语言的框架,因为它可以很容易地结构化以适应专业问题领域。

毫无疑问,它的使用导致了其他编程语言的引入,如java、c++和其他新的面向对象的系统和语言。此外,通用的算法语言algol 60是simula 67的一个子集。

如何学习simula

如前所述,”simula”这个名字来源于两种模拟编程语言,simula 67和simula i。正如其名称所示,这个面向对象编程语言最初是为模拟而引入的:作为一个通用的编程语言,该软件为现代各种面向对象语言的多个特性提供了一个框架。

simula是第一个面向对象编程语言。

©norwegian computing center, ole-johan dahl & kristen nygaard / public domain, from wikimedia commons, the free media repository – license

simula引入了类、子类、对象、虚拟过程、继承、离散事件模拟等。自从引入以来,这种面向对象编程语言在各种应用中发挥了重要作用,包括过程建模、大规模集成、算法、通信协议、排版、教育、计算机图形等。

simula和simula类型的对象还被重新实现在现代编程语言中,如c++、java、c#、object pascal等。

simula与smalltalk的区别

simula主要将对象描述为返回指向它们各自活动记录的指针的过程。实质上,这个面向对象编程语言基于过程活动记录。

另一方面,smalltalk也是一种面向对象编程语言,但它是一种动态类型的反射式编程语言,旨在支撑新的计算时代。smalltalk最初发布为smalltalk-80,这种编程语言部分设计用于教育用途,特别是建构主义学习。smalltalk是由alan kay、adele goldberg和dan ingalls在simula问世10年后的1972年创建的。

simula的优点

  • 协助模拟复杂的计算系统。
  • simula 67是目前大多数主流面向对象编程语言的框架,包括c#和java。
  • 这个面向对象编程也使得编写新的并发抽象更容易,例如调度器。
  • 具有自动内存管理功能,包括垃圾回收。

smalltalk的优点

  • smalltalk使学习面向对象编程变得更容易。
  • 它消除了许多面向对象编程语言(包括java)中的认知压力。
  • smalltalk有助于更快的开发。
  • smalltalk是一种业余爱好者语言。

simula的缺点

  • 创建程序的复杂性。
  • 学习曲线陡峭。

smalltalk的缺点

  • smalltalk不支持抢占式多线程。
  • smalltalk不够表达力,不适合更复杂的语法,如rust、haskell等。
  • 对于某些应用程序,smalltalk可能运行较慢。

simula发布历史

克里斯滕·尼尔加德(kristen nygaard)是奥斯陆大学的数学硕士,在1957年开始编写计算机仿真程序。他正在寻找一种更好的描述系统的异构性和操作的方法。为了进一步阐述他对描述系统的形式化计算机语言的想法,尼尔加德意识到他需要一个比他更具计算机编程技能的人;因此,他在1962年1月联系了奥斯陆大学的数学硕士兼挪威最杰出的计算机科学家之一奥勒·约翰·达尔(ole-johan dahl),后者加入了他。

挪威开发人员奥勒·约翰·达尔和克里斯滕·尼尔加德。

到了1962年5月,用于仿真语言的主要概念已经确定下来。 “simula i”诞生了,这是一种用于模拟离散事件系统的特殊目的的编程语言(类似于algol 60)。 simula i在1965年1月完全在univac 1107上运行。达尔和尼尔加德在接下来的几年里花了很多时间教授simula。该发展传播到世界上几个国家,并在burroughs b5500计算机和俄罗斯ural-16计算机上实施。

在1966年,英国计算机科学家托尼·霍尔(tony hoare)介绍了记录类构造的概念,达尔和尼尔加德扩展了该概念,并引入了前缀和其他特性,以满足他们对新的广义进程概念的要求。 simula 67的第一个正式定义出现在1967年5月。 1967年6月,召开了一次会议,以标准化该语言并启动几个实现。达尔提议统一类型和类的概念。这引起了严肃的讨论,委员会拒绝了这一提议。它在simula标准组的第一次会议上正式标准化,该会议于1968年2月举行。

simula:开发结束

simula是由克里斯滕·尼尔加德和奥勒·约翰·达尔于1962年至1967年在奥斯陆的挪威计算中心(ncc)设计和开发的。

然而,simula编程语言并没有广泛使用,主要是因为它具有的一些限制,包括使用它创建程序的复杂性。尽管如此,它在当今的编程世界中具有重要影响,包括引入重要的面向对象编程语言和概念,如动态绑定、继承、类和对象等。

Written by