设为首页收藏本站

LUPA开源社区

 找回密码
 注册
文章 帖子 博客
LUPA开源社区 首页 IT综合资讯 查看内容

语言创造者谈:为什么我们需要新编程语言

2010-8-3 09:43| 发布者: joejoe0332| 查看: 4515| 评论: 0|原作者: yeeyan|来自: yeeyan

摘要:   罗布•派克是Google公司的一名工程师,也是程序设计语言Go的发明者。他对Java、C++的看法参见“Google executive frustrated by Java, C++ complexity”(July 22, 2010 http://www.infoworld.com/d/developer-wo ...
  罗布•派克是Google公司的一名工程师,也是程序设计语言Go的发明者。他对Java、C++的看法参见“Google executive frustrated by Java, C++ complexity”(July 22, 2010 http://www.infoworld.com/d/developer-world/google-executive-frustrated-java-c-complexity-375)一文。

  创造者介绍了他们期望会彻底变革计算的程序设计语言

  两打新程序设计语言的创造者——有些设计用于实现功能强大的新型Web应用程序和移动设备——上周在美国俄勒冈州波特兰市介绍了他们的工作。这次聚会是为了在O'Reilly出版社开源大会上第一个新生语言营地。

  这些设计师包括渴望在新型开发中施展拳脚的业余爱好者、希望影响下一代计算的学者以及来自像微软和Google等公司哪些想用新工具对付不断变化的应用程序和基础设施的研究人员。

  在信息量大得难以理解的20分钟演示过程中,设计师们分享了他们各种语言胚胎的细节。设计师个个都有的强烈愿望是,为有几十年历史的、似乎越来越不适应于现代计算的编程大会蜕皮——这是这个技术领域共享的一个愿望。“语言设计在此刻复兴,”Google公司工程师罗布·派克,也是这家公司开发出来的一种程序设计语言Go的共同设计师说,“而设计新语言的最大理由是,现有的主流语言不能解决人们想要解决的问题。”

  对于像Google和Facebook以及Amazon一样的大型企业来说,其中一个问题利益攸关,就是如何应付与数据中心和云计算网络类似的分布式多芯计算平台激增的复杂性。Google于2009年年底推出程序设计语言Go,作为C++的一个替代品。按照派克的说法,C++不让程序员轻易地利用现代并行计算体系,“C++在Google和许多其他公司都是主要的系统语言,基本上现在有20岁了,”派克说。“我们现在所了解的硬件和网络的许多事情——以及它们如何改变软件设计思想——都没有机会影响那样的语言设计。”

  派克和他的队友发现,在Google的规模上,C++要花数分钟或数小时进行编译,限制了生产效率。(编译是把人类可读的源代码成批翻译成计算机CPU可以执行的二进制“机器语言”的过程)。Go减少编译过程的冗余意味着,“程序能够在大约几秒钟之内准备好执行,”派克说。他不认为Go会把C++推到一边,自己成为一门占优势的语言,他说,“我们只是觉得需要一些竞争对手,”但又补充说,在Google公司内部,Go已经用在一些“实际项目”上。

  另一个不断发展的计算领域牵涉到在移动设备上运行的程序,这些设备链接到“专门的”无线网络。来自比利时布鲁塞尔自由大学的汤姆·范·卡特塞姆介绍了一种实验语言AmbientTalk,探索一种所谓“面向周围环境程序设计”的新范式,它在两个主要方面背离了传统分布式计算。第一,它不依赖中央基础设施。第二,它假定网络连接都不稳定并且不可预测(情况通常就是这样,移动设备进出彼此的范围)。依范·卡特塞姆所说,“AmbientTalk缓存信息足够聪明,因此,连接中断时不丢失信息,而在连接恢复时,就把那些信息完全发送出去,仿佛什么事也没有发生一样。”

酷毙

雷人

鲜花

鸡蛋

漂亮
  • 快毕业了,没工作经验,
    找份工作好难啊?
    赶紧去人才芯片公司磨练吧!!

最新评论

关于LUPA|人才芯片工程|人才招聘|LUPA认证|LUPA教育|LUPA开源社区 ( 浙B2-20090187 浙公网安备 33010602006705号   

返回顶部