这个问题来自于对过去50年左右计算领域各种进展的评论。
其他一些与会者请我把这个问题作为一个问题向整个论坛提出。
这里的基本思想不是抨击事物的现状,而是试图理解提出基本新思想和原则的过程。
我认为我们在大多数计算领域都需要真正的新想法,我想知道最近已经完成的任何重要而有力的想法。如果我们真的找不到他们,那么我们应该问“为什么?”和“我们应该做什么?”
这个问题来自于对过去50年左右计算领域各种进展的评论。
其他一些与会者请我把这个问题作为一个问题向整个论坛提出。
这里的基本思想不是抨击事物的现状,而是试图理解提出基本新思想和原则的过程。
我认为我们在大多数计算领域都需要真正的新想法,我想知道最近已经完成的任何重要而有力的想法。如果我们真的找不到他们,那么我们应该问“为什么?”和“我们应该做什么?”
当前回答
函数式编程研究者对单子的重新发现。单子有助于让一种纯粹的、懒惰的语言(Haskell)成为一种实用的工具;它还影响了组合子库的设计(一元解析器组合子甚至在Python中找到了自己的方式)。
Moggi的“程序模块的范畴理论解释”(1989)通常被认为是将单子引入有效计算的观点;Wadler的作品(例如,“命令式函数式编程”(1993))将单子作为实用工具。
其他回答
我相信单元测试、TDD和持续集成是1980年之后的重大发明。
MPI和PVM并行化。
Paxos协议。很难描述它在互联网时代的价值。
bt。它完全颠覆了以前看似显而易见的不可改变的规则——一个人通过互联网下载一个文件所需的时间与下载该文件的人数成正比。它还解决了以前的点对点解决方案的缺陷,特别是围绕着“吸血”,以一种有机的解决方案本身的方式。
BitTorrent优雅地将通常的缺点——许多用户试图同时下载一个文件——转变为优点,将文件在地理位置上分发,这是下载过程的自然组成部分。它优化两个对等点之间带宽使用的策略不鼓励作为副作用的“吸血”——强制节流符合所有参与者的最佳利益。
这是一种一旦被别人发明出来,即使不明显,也似乎很简单的想法。
如果我们作为一个团体认真地回答这个问题。 不幸的是,我相信我们需要的不仅仅是一串随机的善意的帖子! 我知道,这听起来很无聊,但经常把事情做完才是!
We Write a list of powerful ideas in the area of computing Maybe we should define a few categories to separate each one because videoconference somehow does not fit well with object oriented programming. Seeing ideas by categories makes it easier to generate them without redundancy. It's too easy to sidetrack in teleportation if quantum computing is not kept away from flying cars. Try to attribute each of them a date This will settle the before/after 1980 and restrict debate about each idea to its own. It will be fun to dig for earliest reference, first known implementation, etc. Plus this will allow people like me who were 2 years old in 1980 to have a better idea of what was common programming knowledge in 1980 (nothing beats being there at the time) Try to attribute each of them the current state of their implementation Ok, some idea were sci-fi in 1850, with early development in the 1970 and serious improvement breakthrough in the 1990. Some ideas are just starting to get around. Some are almost forgotten. Probably the wiki thing is a good idea. I think this could really get somewhere if slightly organized. I did not check, but maybe this whole thing already exist already on the net (I usually find that if you think about something, someone already did it). What do you think ? Cheers !