Bloomberg开源面向OCaml的JavaScript后端BuckleScript

Bloomberg开源了BuckleScript,这是一个将OCaml编译到JavaScript的工具,旨在利用OCaml的强大类型系统和高性能特性来增强JavaScript编程。BuckleScript支持与现有JavaScript系统的无缝集成,并在某些场景下展现出超越原生JavaScript库的性能。

近日,Bloomberg开源了BuckleScript,这是一个面向OCaml的JavaScript后端。按照Bloomberg的说法,BuckleScript旨在为任何JavaScript执行引擎带来OCaml类型安全及高性能的代码。

\\

BuckleScript最初是以名称OcamlScript发布的,后来为了避免同另一个项目混淆而改名。BuckleScript由Bloomberg Labs开发,旨在推动大规模JavaScript编程。按照Bloomberg的说法,OCaml的工业级强类型系统,配以一个快速编译器和离线编译时优化器,让这成为可能。

\\

据其主要作者介绍,BuckleScript受js_of_ocaml启发,但目标不同。尤其是,BuckleScript的设计让其更容易与其他现有的JavaScript系统集成,这意味着可以从一个普通的JavaScript模块调用一个定义在BuckleScript中的函数。之所以能够这样做,是因为每个BuckleScript模块都会翻译成一个ES6模块(TypeScript也提供了这个被称为单独编译的概念),而且没有使用名字重整,这也让生成可调式的JavaScript代码成为可能。

\\

举例来说,下面的OCaml代码

\\
let sum n =\    let v  = ref 0 in\    for i = 0 to n do\       v := !v + i\    done;\    !v\
\\

可以翻译成:

\\
function sum(n) {\  var v = 0;\  for(var i = 0; i\u0026lt;= n; ++i){\    v += i;\  }\  return v;\}\
\\

据Bloomberg的工程师说,在特定情况下,BuckleScript的性能可以超过仔细实现的JavaScript库。尤其是,Facebookimmutable库的BuckleScript实现显现出了2倍的性能提升以及代码长度的大幅缩减。

\\

BuckleScript尚处于早期阶段,已提供Linux和Mac OS X版本,Windows支持正在开发中。读者可以从GitHub上获取源代码,也可以通过基于Web的REPL试用。

\\

查看英文原文:Bloomberg Open-sources BuckleScript, JavaScript Backend for OCaml

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值