当前位置:首页Facebook宣布开源Hack:支撑全球12亿人访问的编程语言 举报文章

Facebook宣布开源Hack:支撑全球12亿人访问的编程语言

作者:admin    来源:用户投稿    时间:2015.6.11   

  Hack语言是由Facebook的爱尔兰工程师Bryan O’Sullivan,Julien Verlaguet和Alok Menghrajani在过去几年中设计出来的编程语言,和其他语言不同,Hack能在系统崩溃前发现问题。

  通过与其他社交网络内部工程师合作,Hack被进一步完善,让编程者能在构建复杂代码的同时,保持较快的编程速度和代码的准确性,单从这些特点上看,很少有目前通用的编程语言能达到。据介绍Hack已经在Facebook内部使用了一年,如今它的网站的大部分都是用Hack构建的,该语言已经成功支撑起这个服务于全球12亿人的社交网络。

  参与Hack设计的工程师O’Sullivan表示,Hack已经通过了充分实践的考验。O’Sullivan是科技公司Sun Microsystems和Linden实验室的老牌工程师,曾在Haskell语言研发中发挥关键作用。

  O’Sullivan今天早晨向全球公开了Hack语言,宣称其为“开源”编程语言,在分享这一语言的同时,希望世界各地的编程者能进一步完善Hack。

  软件编码从来不缺编程语言,新的语言屡见不鲜。但如果尝试体验一下Hack,或是知道Hack设计者的背景,就会知道它绝非等闲之辈。计算机编程专家David Pollak昨天才第一次听说Hack这种语言的存在,他表示“如果是O’Sullivan的作品,无论如何我都想尝试一下。”

  扎克2003年下半年推出Facebook,选择当时很流行的PHP编程语言建立网站。PHP是一种“动态语言”,不需要程序员花时间定义程序中每个变量的特定参数,完成一段代码后就能马上运行,而省下了编译的过程,编译过程在程序编写的同时在后台运行。

  但随着Facebook的用户扩大到上千,PHP开始显示出局限性。PHP网站扩大时,需要处理器运行网站的数量要比其他语言多,并且容易出现故障。网站规模足够大时,最好采用静态语言来构架,比如Java,更容易管理各种变量,需要的服务器数量少,更容易管理。但这种语言又有另一种局限:构架的速度很慢,需要完成代码和编译过程后才能运行。

  去年Facebook的三名顶级工程师为PHP的局限性提出了解决方案:在PHP代码虚拟机HHVM(Hip Hop Virtual Machine)上运行程序,HHVM构成了Facebook的新基础,大大减少了网站运行需要的服务器数量。而对于Java等静态代码的局限性,则被这种新的编程语言解决了,Hack让能简化代码编辑过程的同时减少出错量。

  O’Sullivan介绍说,“开发Hack语言的动机,是提高我们程序开发人员的工作效率。随着工程师团队的扩大,由于PHP动态语言的特性,让他们的工作复杂程度大大提高,工作中对代码的预测能力下降,更容易出错。”

  Hack是新型PHP? 你可以这么想。Hack也可以在HHVM虚拟机上运行,但编程者可以同时通过动态或静态的方式编写。这种运作方式被称为“gradual typing”。这种编写方式此前还只在实验室研究中提出过,Hack首次在现实中实现了其“实际的产业价值”。

  有了Hack,Facebook可以逐步用它来替换已有的PHP程序,把原本的动态编辑系统转变成静态编辑系统。O’Sullivan解释说,“这种语言让编写者能自由选择动态或静态的程度,比如可以用动态语言开始,然后逐步往其中添加静态语句,从而将这两种不同特点的语言优势发挥到最大。”

  Hack的其他优点还包括:提供了更加精确的编辑语言以减少出错率,为编程者提供了“安全网”(safety net),工程师在重新访问代码时更容易读懂等等。

  Hack在提供这些优势的同时,没有影响编程者的速度。和其他静态语言不同,Hack可以在不编译的情况下直接运行。在完成代码书写后,可以直接在网页上运行并得到运行结果,如下图所述,没有普通静态语言编辑和运行上的延迟,同时保证了安全性(及时纠错)和速度。

  用户反馈:Nils Adermann是Forumatic公司软件工程师兼联合创始人,他也用Hack语言。Adermann表示,这种语言超越了其他任何语言。PocketRent的工程师James Miller和Simon Welsh也适用Hack,并认可了上述评价。他们认为此前最接近Hack的语言是Haskell,Haskell是一种静态编译语言,代码反馈的速度也很快,能动态查看编辑效果,但Hack显然在这一点上做的更好。

  Adermann表示,Hack对于已经采用PHP编辑的网站来说具有很大的吸引力,“有些讽刺,PHP采用Hack的最主要原因,是因为它和PHP的不同之处。”这些网络也可以模仿Facebook,从PHP逐步转化到Hack。但Adermann相信,即便是还没有采用PHP的工程师也会意识到Hack的实用性,因为PHP是目前网络构架最常用的语言,而Hack解决了它连贯性差的一大缺陷,让原有的语言的可用性大大扩展了。”

  但对于Hack最大的肯定,莫过于在Facebook这一全球最大社交网络上的成功应用。一个新语言能通过如此瞩目的方式被业界所认识实属难得。但有些人对Hack的身份提出了质疑:算不上是PHP的替代,更像是PHP的补丁。那么Facebook对于这种声音的态度如何呢?O’Sullivan笑称,这是茶余饭后争论的好话题。

  原作者介绍:Cade Metz,Wired.com科技网站编辑。

  (via wired 译/快鲤鱼)

好文打赏,给Ta鼓励
扫一扫用手机阅读本文
Tags:宣布  开源  支撑  全球  访问  编程  语言  
  • 相关搜索
图片推荐
    微商该怎么做?方向大于选择

    微商该怎么做?方向大于选择

    刚在朋友圈玩了一个游戏,老掉牙的游戏,集赞点赞够多就分享一篇刚收获的干货,大伙很给力,一会就几十个赞了,都不好意思不写了,连夜不知疲惫赶稿啊!同志们要认真看啊!别辜负我的一片苦心啊!  是这样今天请了
    即将到来的百度搜索“大地震”,超越黑色6.28K站事件

    即将到来的百度搜索“大地震”,超越黑色6.28K站事件

    六月以至,可喜的是百度网页搜索质量白皮书即将发布,可悲的是百度会对一些质量低的站点给予降权,这对于站长来说,不论是企业、个人或第三方提供商都会是一件可喜可悲的事。而今年不同于往年,既然百度五月中旬发布
    戳穿SEO谎言:被高估的PR值

    戳穿SEO谎言:被高估的PR值

    国内大部分的主流SEO都把网页的PR值看的太过重要了,以至于明显高估甚至误解了PR的作用。比如,交换友情链接要看PR,判断网站质量要看PR,SEO的成效标准要看PR,PR高低简直成了判断一个站长或者S
    浅谈中小网站的SEO思路

    浅谈中小网站的SEO思路

    中小网站的站长通常都要面对资金限制这一问题,从而制约了网站从百度竞价、其他推广渠道获得流量,因而只好采用保守经济的seo方式来增加人气和流量。可能有不少站长会羡慕大型网站的丰富资源,但熟悉seo的人都
    新站如何获取长尾词的流量

    新站如何获取长尾词的流量

    长尾词对于小型企业站来说是非常珍贵的资源,因为小型企业的目标词流量非常有限即使排名做到第一名百度竞价也已经截取了很大一部分流量,自然排名可获得的流量非常细微。长尾词布局就显得尤为重要,今天易科seo以
    精细之外 邮件营销更要因行业而异

    精细之外 邮件营销更要因行业而异

    关于邮件营销,我想大家肯定都不陌生,相对于做广告或是软文营销,邮件营销的方式方法虽然有点像苦力活,但是一封好的邮件仍然会给自己带来比较可观的转化率,这点毋庸置疑。可是相比于微信以及微博推广,我们在做邮
    新手开店卖什么赚钱

    新手开店卖什么赚钱

    很多朋友对于网赚的理解还停留在淘宝开店的层面,诚然,淘宝开店确实是属于网赚的一种,但是目前已经不是黄金时代,淘宝市场已经趋近于饱和,新手销售普通的商品,很难成功,接下来,简单的与大家分享几种适合新手操
    怎么开网店步骤与流程?详细淘宝开店教程教你如何开

    怎么开网店步骤与流程?详细淘宝开店教程教你如何开

    怎么开网店步骤与流程?详细淘宝开店教程教你如何开 最近越来越多的人看到了电子商务的迅速发展,都想在淘宝开一家网店。谈到开网店,很多人都没有经验,也不知道如何去注册网店。网上各种搜索查找,也没能找到一份
你是怎么知道非凡网赚网的?
  •   
  • 联系QQ 邮箱:976382653@qq.com 微信:976382653
    在线留言
    发布软文
    广告自助购
    文章调用
    常见问题
    保存到桌面