导语:研究者常常面临着使用一种编程语言来写代码,之后再用一种更快的语言重写的窘境。一种新的编程语言可以解决这个难题。
在做气象建模的时候,每秒的计算时间都很重要。这些模型中需要考虑到空气、土地、太阳和海洋,以及它们之间复杂的物理联系。一个模型可能会有数百万行代码,在世界上最强大的计算机上执行。因此,气候建模联盟(CliMA)——美国的一批科学家、工程师和数学家组成的联盟——的气候学家在从零开始为模型写代码的时候,就选择了一种能满足他们需求的语言:Julia。插画:The Project Twins
Julia于2012年发布。这是一种开源的语言,将脚本语言(例如Python,Matlab和R)的交互性和语法与编译语言(例如Fortran和C)的速度结合到了一起。
在气候科学家里,通用语是Fortran:快速,但是——由于它的历史可以追溯到1950年——并不是很吸引人。美国海军研究生院的数学家,也是CliMA的主管之一Frank Giraldo说:“很多人听到Fortran的时候就一脸‘天啊,我可不想写那玩意儿’的表情。”年轻的程序员更喜欢那些可以使用最时髦的软硬件设计模式的编程语言,他说,而自从使用了Julia,他看到大家的兴趣越来越浓。“有些人是真的对气候模型感兴趣,其他人的兴趣则在用Julia做大规模应用上。”他说。
正在加州理工大学学习材料科学的Jane Herriman说,自从她用Julia重写了自己的Python程序之后,运算速度提升了十倍。墨尔本大学的系统生物学家,自称“Julia传教士”的Michael Stumpf将R语言的模型以Julia重写,运算速度提升了800倍。“以前要跑好几周甚至几个月,现在一小时就跑完了。”他说。