30年来我们走过了漫长的路(但你还没有看到任何东西!)

30年的数学

长期技术

6月23日,我们庆祝发射30周年属于数学软件.30年前的大多数软件现在已经不复存在了。但不是数学。事实上,在很多方面感觉就像30年后,我们才刚刚开始。我们的使命一直以来都是一个大问题:要使世界尽可能可计算,为每件事都添加一层计算智能。

我们的第一大应用领域是数学(因此得名“mathematica”)。我们一直在推动数学的发展。但在过去的30年里,我们已经能够建立在我们在Mathematica 1创造整个计算能力的大厦,我们现在称之为沃尔夫拉姆语-这和今天的数学是一致的。

从我第一次开始设计数学的时候,我的目标是建立一个经得起时间考验的系统,这将为我的未来的计算提供基础。很高兴看到一切顺利。我的原创语言设计的核心概念继续灌输我们所做的一切。这些年来,我们一直能够在现有的基础上继续建设,创造一个更高,更高的塔仔细整合的能力。

今天在旧电脑上启动Mathematica1.0很有趣,并与今天进行比较:

旧版Mac与iPhone

对,即使在版本1中,有一个可识别的Wolfram笔记本被看见。但是数学代码呢(或徳赢彩票游戏者,就像我们今天所说的,沃尔夫拉姆语代码)?好,1988年运行的代码今天运行,完全一样!而且,事实上,在过去的30年里,我通常会在任何时候提取我编写的代码,然后运行它。

当然,语言设计需要很多长期的学科来完成这项工作。如果没有原始设计的强度和清晰度,这将是不可能的。但很高兴看到每天的努力在过去的30年里,我一直处于领导地位,语言设计的一致性在长期的稳定中得到了很好的回报。

它长得太大了

回到1988,Mathematica向前迈出了一大步在高级计算中,人们惊讶于它能做多少。但与Mathematica和Wolfram语言今天所能做的相比,这绝对是无足轻重的。作为一种方式来看,以下是如何不同的主要功能领域在1988年到今天之间“点亮”了:

功能性差异

1988年551个内置功能;现在有5100多个。对每个功能的期望也大大增加了。“的概念超函数“这种自动化的算法能力已经存在于1988年,但与我们的现代超级功能相比,它们的能力显得微不足道。

早在1988年,符号表达式和符号编程的核心思想就已经存在,基本上像今天一样工作。还有各种与数学计算有关的函数,以及基本的可视化。但在随后的几年里,我们一个接一个地征服了这个地区。

按版本的函数增长

部分原因是原始计算机能力的增长使新的领域成为可能。徳赢中国部分原因是我们有能力理解可以想象的事情。但最重要的是,通过我们系统的集成设计,我们能够逐步建立在我们已经做的基础上,一个接一个地到达一个新的领域,徳赢中国以加速的速度。(这是按版本计数的函数图。)

我最近找到了一份我在1991年写的待办事项清单,现在我很高兴地说,2018,基本上,它的所有内容都已成功完成。但在很多情况下,要想达到我想要的目标,需要花费很多年的时间来建造一座完整的能力塔。

从一开始-甚至从先于Mathematica的矿山项目-我的目标是将尽可能多的知识构建到系统中。起初,知识主要是算法上的,正式的。但是,一旦我们能够正常地期望网络连接到中央服务器,我们开始认真地建造现在我们的庞大的知识库关于真实世界的可计算数据。徳赢彩票游戏

回到1988,我可以把关于Mathematica的所有东西都记录在徳赢彩票游戏我写了750页的书.今天如果我们打印出联机文档大概需要36000页。该系统的核心概念一如既往地简单明了,尽管如此,即使在小书.

以书籍形式提供的当前文档

世界是如何变化的

三十年基本上是现代数字计算完整历史的一半。Mathematica和Wolfram语言不仅有坚持下去的力量,而且非常令人满意。但为了保持它们的整体形态和结构,一直以来。

三十年前,Mathematica(全部2.2兆字节)出现在“邻里软件商店”的可用框中。并被分发到软盘集(或,对于大型计算机,在各种磁带上)。今天,人们只需随时随地下载(大约4 GB)。徳赢彩票游戏在线访问其知识库(许多兆字节),或者只在钨云,通过网络浏览器。(在一个奇怪的历史脚注中,事实上,万维网是在1989年被购买来运行Mathematica的下一批计算机上发明的。)

Mathematica软盘

三十年前,有“工作站级计算机”运行Mathematica,但几乎只有机构拥有。1988,PC使用MS-DOS,工作记忆被限制在640K,这不足以运行Mathematica。Mac可以运行Mathematica,但它总是非常适合(“需要2.5兆字节的内存;建议使用4兆字节”)——在每本笔记本的底部都有一个内存测量仪,它显示了你有多接近耗尽的内存。哦,对,Mathematica有两个版本,取决于您的机器是否有“数字协处理器”(允许它在硬件而不是软件中执行浮点运算)。

摩托罗拉手机

回到1988,我买了我的第一部手机,有鞋子那么大。像Mathematica这样的东西可以“在电话上运行”的想法看起来很荒谬。但今天我们和Wolfram云应用程序在手机上,和Wolfram播放器在iPad上本地运行(并且,对,他们没有虚拟内存,因此,我们过去严格内存管理的传统非常方便)。

1988,运行Mathematica的计算机总是你插在电源插座上使用的东西。以及,例如,在飞机上使用mathematica基本上是不可想象的(好吧,好啊,即使是在1981年,当我把奥斯本1号运行cp/m的电脑拖到飞机上时,我在747的背面找到了一个电源插座。直到1991年,我才骄傲地在一次演讲中举起一台康柏笔记本电脑,它用电池驱动了Mathematica,而且在接下来的十年里,它也不再是一台便携的Mathematica。

多年来我一直使用1989 ^ 1989当我在一台新机器上尝试Mathematica时,我的测试计算。徳赢中国在1989年,我通常会计算等待计算完成的秒数。(1988 ^ 1988通常在1988年太慢了,无法使用:可能需要几分钟才能回来。)今天,当然,同样的计算是瞬时的。(实际上,几年前,我第一次又做了计算树莓电脑-又过了几秒钟。但那是一台25美元的电脑。现在,即使它运行的计算速度也非常快。)

多年来,计算机速度的提高不仅对我们所能做的事情产生了数量上的影响,而且也对我们所能做的事情产生了质量上的影响。回到1988年,一个人基本上做了一个计算,然后看了结果。我们讨论了如何实时与徳赢彩票游戏Mathematica计算进行交互(甚至在1989年,下一台计算机上也有一个演示,它做了一个简单的例子)。但是,计算机通常要花18年的时间才能实现足够快的速度操纵动态的-“循环中的数学”。

我从一开始就认为图形和可视化是Mathematica的一个重要特征。当时有“绘制”(位图)程序,还有“画图”(矢量)程序。我们决定使用当时的新PostScript语言独立地表示所有图形输出分辨率。徳赢中国

我们有各种各样的计算几何挑战(想想那些破碎的多边形)。但即使在1988年,我们也能生成与分辨率无关的3D图形,在准备Mathematica最初的发布时,我们发现了“我们可以轻松生成的最复杂的3D图形”。最终形成了最初的二十面体“尖峰”——今天进化成了我们的菱形六角形标志

尖峰演化

在一个软件时代的标志下,原来的尖刺也使优雅,但异想天开,Mac上的Mathematica启动屏幕:

Mathematica启动屏幕

回到1988,有命令行接口(如unix shell)。还有文字处理器(比如WordPerfect)。但是,把“笔记本”(我们称徳赢中国之为“笔记本”)混合在一起是一个新想法,输入和输出以及图形,通常在单独的窗口中生成,甚至在单独的屏幕上生成。

即使在Mathematica 1.0中,今天的Wolfram笔记本电脑已经有了许多熟悉的功能:细胞,细胞群,样式机制,还有更多。甚至还有同样的双倍细胞支架评估指标,尽管在那些日子里,较长的渲染时间意味着需要更多的“娱乐”,其中mathematica以跳跃字符串图形等待光标的形式提供,该光标在与刷新CRT显示相关的垂直回程中断期间实时计算。

在标准良好的软件体系结构中,从一开始,Mathematica就被分成两部分:一个内核进行计算,以及支持笔记本接口的前端。这两部分通过Mathlink协议进行通信(目前仍在使用,但现在叫WSTP)以一种非常现代的方式,基本上是来回传递象征性的表达。

早在1988年,像Macs这样的计算机正努力运行Mathematica,在本地台式机上运行前端是很常见的,然后在一台更重的机器上有一个“远程内核”。有时这台机器会通过以太网连接,或者很少通过互联网。人们更经常使用拨号连接,而且,对,在1.0版本中有一个完整的机制来支持调制解调器和电话拨号。

当我们第一次构建笔记本前端时,我们认为它是围绕内核的一个非常薄的包装器,我们可以为不同计算机系统的不同用户界面“冲出去”。我们首先为Mac构建了前端,然后(部分并行)进行下一个。几年之内,我们为当时的新微软视窗系统建立了独立的代码库,徳赢中国对于X窗口。

但随着我们对笔记本前端的抛光,它变得越来越复杂。1996年,当我们成功地创建了一个运行在所有平台上的合并代码库时,这是一个极大的解脱。

15年来,事情就是这样运作的。但随后乌云降临,还有手机。现在,出于必要,我们还有多个笔记本前端代码库。也许几年后我们就能再次合并。但有趣的是,几十年来,同样的问题一直在循环。

与前端不同,我们从一开始就将内核设计为尽可能强大的可移植性。这些年来,它被移植到一系列令人惊叹的计算机上,通常是一种新型计算机运行的第一个严肃的应用软件。徳赢中国

从数学发展的早期,内核总是有一个原始的命令行接口。今天还在那里。令我惊奇的是,在一些新的和不熟悉的情况下,有这样一个原始的界面是多么的频繁。徳赢中国回到1988,它甚至可以将图形制作成ASCII艺术,但这并不是今天的需求量。但是,例如,原始内核接口就是狼蛛用于提供对Wolfram语言的编程访问。

软件考古学

有很多早期的计算历史正在消失。在实践中运行Mathematica1.0并不容易。但是在经历了一些早期的Mac之后,我终于找到了一个运行得还不错的。我们从Mathematica1.0的分布软盘中加载了它,是的,它启动了!(我猜发行版是在6月23日实际发行的前一周制作的,1988;我隐约记得为了复制最终的磁盘而发生的混乱。)

版本1屏幕截图

不用说,当我想活生生的时候,Mac停止工作,只在屏幕上显示一个奇怪的斑马图案。敲打电脑的一边(一种典型的1980年代的补救方法)什么也没做。但就在我要放弃的时候,徳赢彩票游戏机器突然复活了,我在那里,徳赢彩票游戏即将再次运行Mathematica 1.0。

我试过各种各样的东西,创建一个相当长的笔记本。但我想知道:这到底有多兼容?所以我把笔记本放在软盘上,把它放进软盘驱动器(是的,你仍然可以在现代电脑上买到。起初,现代的操作系统不知道如何处理笔记本文件。

但是我添加了我们以前的“.ma”文件扩展名,打开它。还有……哦,天哪……它刚刚起作用了!Wolfram语言的最新版本成功读取了1988年的笔记本文件格式,并呈现了现场笔记本(也创造了一个不错的,现代“.nb”版本:

早期Mac上的Wolfram语言

图形周围有一些有趣的间隔,反映了1988年处理图形的旧方法。但是如果你只选择笔记本上的单元格,印刷机换档+进入,出现了一个完全现代的版本,现在还有颜色输出!

现代版

前面的路

在Mathematica之前,先进的技术计算充其量只是技术计算专家们的一个小“神职”。但一旦Mathematica出现在现场,这一切都发生了变化,一个典型的工作科学家或数学家可能会现实地期望用自己的手进行认真的计算(然后将结果保存或发布在笔记本上)。

在过去的30年里,我们已经非常努力地逐步扩大更多的领域,以便立即进行计算。内部往往有很好的技术复杂性。但我们的目标是让人们尽可能直接、自动地将高层次的计算思维转化为实际的计算。

结果非常强大。这是一个非常令人满意的来源,可以看到多年来有多少发明和发现了Mathematica,有多少世界上最富有成效的创新者使用Mathematica和Wolfram语言。

但令人惊讶的是,即使经过这么多年,我认为,数学家和沃尔夫拉姆语言的最大优势只是现在才开始变得明显。

它的一部分与新出现的认识有关,即系统地、连贯地将知识构建到一个系统中有多重要。而且,对,Wolfram语言在这几年中一直是独一无二的。这意味着我们有一个巨大的计算智能塔,可以立即应用到任何事情上。

说句公道话,在过去的30年里,Mathematica和Wolfram语言主要作为桌面软件部署。但特别是随着通用计算生态系统的日益复杂化,在过去的5-10年里,我们已经能够非常强大地发展强大的部署渠道这使得Mathematica和Wolfram语言可以在越来越多的重要企业设置中使用。

Mathematica和Wolfram语言一直是研究的标准,教育和定量金融等领域。但现在他们可以将计算智能之塔带入任何使用计算的领域。

从数学开始,我们参与了现在被称为人工智能的工作(最近几次,我们一直是支持人工智能的领导者)现代机器学习)我们对各种形式的数据也有很深的了解,用什么现在被称为数据科学.

但是,直到现在才变得更清楚的是,对于允许数据科学和人工智能发挥其潜力,Mathematica和Wolfram语言的广度有多重要。当然,我们很高兴地看到,过去30年来我们所建立的所有能力,以及我们努力维护的所有设计一致性,现在在这些领域如此重要。

计算的概念无疑是上个世纪最重要的智力发展。我的目标是用Mathematica和Wolfram语言提供最好的工具,将高级计算融入到每一个可想象的领域中。

几乎每一个领域(从艺术到动物学)都有,或者很快,一种“计算X”,通过使用计算范式来定义场的未来。令人兴奋的是,Wolfram语言的独特功能让它能够帮助推动这一进程,成为“计算X语言”。

传统的非基于知识的计算机语言从根本上被设置为一种告诉计算机通常在相当低的水平上做什么的方法。但是,Wolfram语言的一个方面,现在才开始被认识到,这不仅仅是为了告诉计算机该做什么;这是真的计算通信语言,这提供了一种表达计算思维的方法,对计算机和人类都有意义。

过去,基本上只是电脑应该“读代码”。但就像对数学符号概念的广泛概括,Wolfram语言的目标是让人类能够轻松阅读,用于表示和理解计算思想。

把它和笔记本的概念结合起来,我们就可以看到计算论文-我认为它注定会成为未来重要的沟通工具,Wolfram语言的独特之处,有着30年的历史。

三十年前,看到这么多科学家和数学家通过数学“发现计算机”,真是令人兴奋。今天,看到这么多“计算X”的新领域被打开,真是令人兴奋。徳赢中国但我们也很兴奋地看到,随着我们用Wolfram语言实现的自动化水平的提高,我们已经设法做到了把复杂的计算带到任何人都能接触到的程度.特别令人满意的是看到各种各样的孩子- AT中学水平甚至在下面开始流利地使用Wolfram语言和它提供的高级计算思想。

如果我们看看计算机的历史,从很多方面来说,这是一个不断增加能力层次的故事,变得无处不在。首先是早期语言。然后是操作系统。后来,在Mathematica出现的时候,用户界面开始变得无处不在。不久之后出现了网络,然后出现了大规模的互联系统,如网络和云。

但是现在,Wolfram语言提供的是一个新的层次:一个计算智能的层次,使得人们可以理所当然地将关徳赢中国于计算和世界的高水平内置知识,徳赢彩票游戏以及自动化其应用程序的能力。

在过去的30年里,许多人使用了Mathematica和Wolfram语言,更多的人暴露在他们的能力中,通过类似的系统沃尔夫拉姆阿尔法和他们一起建造。但是现在可能的是让Wolfram语言在整个计算世界中提供一个真正无所不在的计算智能层。建造一座技术和能力之塔花了几十年时间,我相信这是值得的,但现在我们在那里,是时候让这一切发生了。

但是,数学和沃尔夫拉姆语言的故事不仅仅是一个技术的故事。这也是一个关于那些选择把Mathematica和Wolfram语言作为他们工作和生活的一部分的杰出个人群体的故事。现在,随着我们进一步认识到Wolfram语言在未来世界的潜力,我们需要这个社区来帮助解释和实现Wolfram语言定义的范例。

不用说,向世界注入新的范例从徳赢中国来都不容易。但这样做最终是推动我们文明前进的原因,定义了历史的轨迹。今天,我们正处于一个非凡的时刻,能够将无所不在的计算智能带到世界上。

但对我来说,回顾Mathematica成立30年来,我感谢所有能让我一心一意走上今天的数学和沃尔夫拉姆语言之路的一切。我期待着我们共同努力从这一点向前迈进,并为我认为最终将被视为技术发展和我们的世界的关键因素做出贡献。


评论,请访问此邮件的副本WOWFLAM博客

?斯vwin中国蒂芬·沃尔夫拉姆,有限责任公司 条款γ RSS