2018 年 8 月初,随着的 1.0 版本发布的消息确认,一门名为 “Julia” 的高性能动态编程语言一夜之间刷爆了朋友圈和 GitHub。这个编程语言的新版本将 C 语言的速度、Ruby 的灵活、Python 的通用性前所未有地结合在一起,支持并行处理,易于学习和使用,尤其适合科学和工程计算。
在2019 EmTech China“全球新兴科技峰会”上,Julia语言创建者之一Viral Shah分享了他对“爱女”的愿景:希望她成为一个集开源、自由、快速、动态、自然和简单为一身的语言,征服全世界进行机器学习项目的开发者和企业。
图丨Viral Shah(来源:DeepTech)
“在正式分享Julia社区近况之前,我想先简单讲述一下为什么我要创建一种新的编程语言,”Shah表示。在过去的25年里,我们总共有超过40种编程语言诞生,每种都有各自的优劣。然而没有一门语言集万家之长处为一身,这恰恰是Shah想做的:理想中的Julia要具备C的速度,Ruby的动态性,Python的通用性,Matlab的矩阵和数学计算能力等等。最重要的是,Julia主要专注于机器学习。
虽然现在已经有TensorFlow和PyTorch等语言,适用于机器学习项目的研究,但是它们都是基于Python等其他语言的,并非为机器学习量身定制。Shah及其团队一直在思考:是否需要为此定制一个全新的语言?这样的语言应该长什么样?
他认为Julia团队是“贪婪的”,是一群想要为程序员实现“梦想”的人。
Shah解释说,“学习和掌握编程语言通常很难,对于很多程序员来说,这种持续不断的学习过程将伴随他们一生。因此,简单易学是我们创造Julia的目标之一。”
事实上,自Julia在2009年诞生起,就已经不断有小部分开发者逐渐开始关注这门语言,并且不断为其添砖加瓦。九年之后的2018年8月8日,Julia 1.0版本正式发布,到现在已经有了超过500名贡献者,吸引了超过1500所大学参与,包括麻省理工学院和斯坦福等名校。
目前Julia已经可以在TPU,CPU和GPU上运行,拥有的工具包涵盖工程计算,科学计算,数据科学,图像处理,信号处理和深度学习等多个热门领域,谷歌和英伟达的研究人员也都在一些项目中使用了这种语言。
除了针对Julia语言的基础研发,整个社区也获得了全球1万多家公司的青睐,其中不乏IBM、英特尔、腾讯、阿里巴巴和百度等知名企业。
Shah表示,企业的认可增强了Julia团队的信心,也帮助他们获得了很多奖项,比如计算机行业的James H Wilkinson大奖,团队成员Keno Fischer也获得了福布斯颁发的奖项,再加上3篇论文被NeurIPS 2018收录,这些足以证明Julia是一门优秀的语言。
“Julia的简单易用使其可以更好地融入很多领域,”Shah强调。除了机器学习和工程计算,Julia也受到了美国的一些银行和投资机构的青睐,金融从业者借助它完成预测或制定投资决策。麻省理工学院(MIT)的研究团队也使用Julia优化波士顿地区的校车路线,为相关机构节约了近500万美元的成本。还有多个MIT科研团队正在利用Julia优化能源排放方式,减少碳排放,以及构建全球气候模型。
谈到未来的发展方向,Shah特别提到了软件2.0生态系统。他相信Julia将会十分契合软件2.0的概念,即模型和数据将会替代编程。人们只需要写出代码的大纲和骨架,已有模型就可以计算和搜索可用软件,实现编程的高度自动化。
演讲的最后,Shah公布了2019年Julia Computing巴蒂摩尔大会的消息,并且鼓励更多的人尝试了解和使用Julia语言,共同为它的进步添砖加瓦。
“如果说你有很多种语言可以选择,它们都是平等的,那么你为什么不使用最好的Julia呢?”