当前位置:首页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:宣布  开源  支撑  全球  访问  编程  语言  
  • 相关搜索
图片推荐
    搜索引擎蜘蛛3个考核标准

    搜索引擎蜘蛛3个考核标准

    搜索引擎蜘蛛对搜索引擎来说就是信息来源所在,对于网站站长,总是希望网站对搜索引擎蜘蛛友好,希望蜘蛛能在自己的网站多待会多抓取点网页。其实这些蜘蛛又何尝不想多抓取点页面,多更新点页面呢,只不过互联网信息
    利只能正取不可以苟得 网络推广要向spam说不

    利只能正取不可以苟得 网络推广要向spam说不

    包括外链专员在内的网络推广者每天的使命就是不断地提高自己推广目标(特定推广URL或特定营销内容)的曝光率与推广转化率。    各种spam网络推广越来越流行  众所周知,酒好还怕巷子深,任何信息推广工
    评价体系那么好 为啥不用在网站建设上呢

    评价体系那么好 为啥不用在网站建设上呢

    淘宝让互联网上诞生了很多新职业,比如真人模特麻豆、比如淘宝店客服、比如网络摄影师,当然还有灰色职业,专业刷淘宝信誉的推手、还有差评师,谈到差评师,有的是为了赚点昧心钱,有的则为了挤兑竞争对手。总之,给
    医疗网站结构普遍存在的问题

    医疗网站结构普遍存在的问题

    医疗网站想通过搜索引擎获取有效流量,必须将网站进行合理的规划,提高用户体验度,合理的做好网站SEO策略,其中用户体验度最为明显的表现在于网站内部结构的好坏。针对于医疗网站内部结构而言,就目前的话仍然存
    拍拍微店上线独立App 用qq号直接开店

    拍拍微店上线独立App 用qq号直接开店

    【亿邦动力网讯】12月25日消息,亿邦动力网获悉,京东集团旗下无线建店工具拍拍微店日前正式上线独立App,支持个人用qq号直接开店。  亿邦动力网了解到,与目前市场上其他手机开店应用不同,拍拍微店只支
    要逆天:百度云加速即将提供的6个功能

    要逆天:百度云加速即将提供的6个功能

    卢松松消息,百度云加速预计要6个功能,每个功能完全抓住屌丝站长心理,从收录、搜索结果展现,很多功能都来自百度站长平台,功能各个都很诱人,两个部门合并了吗?    1,死链自动提交:自动通知搜索引擎删除
    3.5万评论的文章竟然是这样写成的,新媒体营销的思考

    3.5万评论的文章竟然是这样写成的,新媒体营销的思考

    有朋友留言:老麦,你写的文章太过于浅了,没有深奥,其实你应该往更深一层去写,这样就会有更多的读者喜欢。  我:你所说的深奥,指的是哪方面?  朋友:就是你的观点应该要用多个例子去论证,用大量的数据去支
你是怎么知道非凡网赚网的?
  •   
  • 联系QQ 邮箱:976382653@qq.com 微信:976382653
    在线留言
    发布软文
    广告自助购
    文章调用
    常见问题
    保存到桌面