4

我第一次遇到 ADA 83 的异常。据我所知,ADA 的设计者发明了异常的概念。这是真的,还是之前出现的任何编程语言也使用异常?

4

3 回答 3

3

根据c2.com 的 Ground Breaking Languages 页面,它是 PL/I。

于 2009-08-20T19:51:32.150 回答
2

这取决于您如何定义泛型。参数多态性 - 允许您定义与特定参数/字段类型无关的函数和类型 - 在ML中已经存在 - 那是 1973 年。维基百科有一个标准 ML 示例:

fun reverse [] = []
  | reverse (x::xs) = (reverse xs) @ [x]

请注意,此函数是静态类型的,但在任何类型的列表上都是多态的(“通用”)。

虽然这个例子是 SML(这是后来的事情),但据我所知,这个概念也存在于最早的 ML 版本中。

于 2009-08-20T20:10:39.880 回答
0

来自维基百科

通用编程工具在 1970 年代首次出现在 CLU 和 Ada 等语言中,随后被许多基于对象和面向对象的语言采用,包括 BETA、C++、D、Eiffel、Java 和 DEC 现已不存在的 Trellis-Owl 语言。由于 John C. Reynolds,Java 和 C# 等语言中泛型的实现正式基于参数化的概念。

于 2009-08-20T19:54:10.553 回答