这个问题来自于对过去50年左右计算领域各种进展的评论。

其他一些与会者请我把这个问题作为一个问题向整个论坛提出。

这里的基本思想不是抨击事物的现状,而是试图理解提出基本新思想和原则的过程。

我认为我们在大多数计算领域都需要真正的新想法,我想知道最近已经完成的任何重要而有力的想法。如果我们真的找不到他们,那么我们应该问“为什么?”和“我们应该做什么?”


当前回答

开源社区开发。

其他回答

我相信单元测试、TDD和持续集成是1980年之后的重大发明。

Open Croquet http://www.opencroquet.org -一个吱吱声,基于smalltalk的3D环境,允许多个用户从内部交互和编程环境。它有自己的对象复制协议,用于在互联网上高效和可扩展地共享环境。**这很难描述,因为没有任何东西能像它一样……

1)我提出这个建议是因为当我试图向别人解释它是什么时,我发现他们希望我把它与其他东西进行比较……我还没有发现任何类似的东西,尽管有许多来自其他系统的元素(例如Smalltalk, Open GL, etoys,虚拟世界,远程协作,面向对象的复制架构),整体似乎远远超过部分…

2)不像这里提到的许多技术,它还没有成为一个广泛开发的商业利基市场……

这两点都是这项技术处于早期阶段的迹象。

我怀疑,当艾伦·凯开始研究这个问题时,他可能首先就考虑过这个问题的主题。

http://www.onlisareinsradar.com/archives/001281.php

声明性编程。

1979年,“计算机程序”势在必行。程序员应该指导编译器做什么和怎么做。(N1)

今天,ASP。NET WebForms和WPF程序员经常在不知道或不关心它将如何实现的情况下编写代码。维基百科还有其他不那么主流的例子。此外,所有sgml派生的“标记”语言都是声明性的,我怀疑1979年的许多程序员是否能预测到它们在30年后的重要性或普遍性。

尽管声明式编程的概念在1980年之前就存在了(参见这篇1975年的论文),但它的发明是在1985年Caml的引入(有争议)或1990年Haskell的引入(争议较少)时出现的。从那时起,声明式编程越来越受欢迎。而且,当大规模多核处理器最终到来时,我们都将成为声明式程序员。

-- 注: 我不能直接证明这一点,因为1979年我还是个胎儿。 从其他答案来看,人们似乎混淆了概念和发明。达·芬奇构想了直升机,但他没有发明它。这个问题是关于计算机发明的。 请不要在评论中提到Prolog (rel. 1975),除非你真的用它开发了一个应用程序。

什么都没有。

我认为这是因为人们改变了他们的态度。人们过去相信,只要找到“好点子”,就能一夜暴富。如今,人们相信,回报最大的是执行过程,而不是发现过程。你有诸如“想法一毛钱一打”和“第二只老鼠得到奶酪”这样的咒语。因此,人们专注于开发现有的想法,而不是想出新的想法。

JIT编译是在20世纪80年代末发明的。