BuckleScript面向OCaml的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<= n; ++i){ v += i; } return v; }
据Bloomberg的工程师说,在特定情况下,BuckleScript的性能可以超过仔细实现的JavaScript库。尤其是,Facebookimmutable库的BuckleScript实现显现出了2倍的性能提升以及代码长度的大幅缩减。
BuckleScript尚处于早期阶段,已提供Linux和Mac OS X版本,Windows支持正在开发中。
评论
modulejs面向对象的javascript框架
modulejs是极致模块化的且面向对象的javascript框架,modulejs能让你在简单易用
modulejs面向对象的javascript框架
0
Dojo面向对象的 JavaScript 框架
Dojo是一个强大的面向对象JavaScript框架。主要由三大模块组成:Core、Dijit、DojoX。Core提供Ajax,events,packaging,CSS-basedquerying,
Dojo面向对象的 JavaScript 框架
0
QuoJS面向对象的 JavaScript 库
Quo.JS是一个小型、模块化、面向对象的JavaScript库,用于移动Web开发中简化HTML文档遍历、事件处理和Ajax交互等功能。
QuoJS面向对象的 JavaScript 库
0
modulejs面向对象的javascript框架
modulejs是极致模块化的且面向对象的javascript框架,modulejs能让你在简单易用的前提下写出更佳维护性和可重用性的javascript代码。Features:HTMLdocumen
modulejs面向对象的javascript框架
0