2

我以前以为是java(我错了),正在读smalltalk上的东西,当我读到这一段时我很惊讶

“Smalltalk 在计算机科学史上有着非常特殊的地位。它在 80 年代初作为 Xerox PARC(帕洛阿尔托研究中心)的产品公开出现。就其面向对象的愿景而言,它与编程语言有很大不同“ _ _

哇,它使用虚拟机。所以这也意味着很久以前就感觉到了“跨平台”的需要..????

4

5 回答 5

2

据称[1],BCPL 的O 代码机器是“60 年代后期”的第一个类似虚拟机的东西。UCSD-Pascal p 码(通常称为第一个 p 码)出现在“70 年代初期” [2]

所以,根据你要问的是谁,它是 Pascal 还是 BCPL。

于 2014-08-01T14:36:39.067 回答
0

实际上 Python 出现的时间与 Java 出现的同时也出现了 VM 。我不确定它是否来自第一个版本(很可能是因为它是 cPython 工作的一个非常基本的方式),但它确实使用了 VM。VM 作为概念早于 Smalltalk,而且很可能甚至早于 Lisp。可能还有其他语言可以填补 VM 历史上的空白。

便携性永远是一个问题。我知道,当我在 1988 年第一次开始使用计算机和编码时,已经有很多操作系统和硬件系统架构。CP/M vs MAC OS vs AmigaOS vs Dos vs Unix vs .... 所以当时很难不觉得需要虚拟机。

我认为我们现在看到更多的虚拟机主要是因为低预算计算机上的可用处理能力。

于 2014-08-02T17:36:21.793 回答
0

Smalltalk 在 1969 年左右开始使用虚拟机,我认为这可以算作70 年代初......不要被绰号“Smalltalk-80”所误导——这不是第一个版本,也不是最新版本。

于 2014-08-02T02:57:02.373 回答
0
  • 以上

    我没有太多的声誉来发布两个以上的链接。所有亮点项目都可以在编程语言的时间线或维基百科中找到。

  • p-code术语p-code 最早出现在 1970 年代初期。

    生成 p 代码的两个早期编译器是 1973 年由 Nori、Ammann、Jensen、Hageli 和 Jacobi 开发的 Pascal-P 编译器,以及由 Niklaus Wirth 在 1975 年开发的 Pascal-S 编译器。

  • O-code机器是在1960 年代后期。

    O-code 机器是由 Martin Richards 在 1960 年代后期开发的虚拟机,旨在赋予BCPL机器独立性。BCPL(基本组合编程语言)是由剑桥大学的 Martin Richards 于 1966 年设计的一种过程式、命令式和结构化的计算机编程语言。

  • IPL大约是 1956 年。

    信息处理语言 (IPL) 是兰德公司和卡内基理工学院的 Allen Newell、Cliff Shaw 和 Herbert A. Simon 于 1956 年左右创建的一种编程语言。从IPL-V 编程参考手册第 1.2 章中说:应该在一个名为 IPL-V 解释系统的程序中运行。而 Lisp 是 IPL 之后的另一个故事。

  • 1949 年的短代码语言来自编程语言的时间线

    编程语言列表的时间轴中,您可能会找到最古老的语言。但我认为前三名不是最老的。从这些话来看,1949 年的短代码看起来像是一种虚拟机器语言:“除了基本的算术,短代码还允许分支和调用函数库。该语言的解释和运行速度比机器代码慢约 50 倍。”

于 2015-01-10T08:55:02.390 回答
0

好吧,1958 年的 AFAIK、LISP(http://en.wikipedia.org/wiki/Lisp_(programming_language))已经有了虚拟机。

是事实(再次,AFAIK),这是 Smalltalk 第一个普及该术语(并且第一个被攻击为“非性能”,“它永远不会扩展”等),但可以肯定的是,它不是第一个:)

于 2014-08-02T12:10:15.800 回答