近日,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

Bloomberg开源面向OCaml的JavaScript后端BuckleScript相关推荐

  1. BuckleScript 1.0发布,面向OCaml的开源JavaScript编译器

    BuckleScript 1.0几乎完全兼容OCaml特性,同时改进了外部函数接口(FFI)以避免编写不安全的JavaScript存根.近日,InfoQ采访了BuckleScript作者张宏波. \\ ...

  2. sm4 前后端 加密_这7个开源的Spring Boot前后端分离项目整理给你

    来源|公众号:江南一点雨 前后端分离已经开始逐渐走进各公司的技术栈,不少公司都已经切换到前后端分离开发技术栈上面了,因此建议技术人学习前后端分离开发以提升自身优势.同时,也整理了 7 个开源的 Spr ...

  3. 开源C++项目Google JavaScript引擎V8挑战实录,带你进入V8之旅

    开源C++项目Google JavaScript引擎V8挑战实录,带你进入V8之旅 http://www.cnblogs.com/pugang/archive/2012/04/02/2430519.h ...

  4. GitHub开源:一键生成前后端代码神器

    目录 1.技术架构 2.微服务架构图 3.业务应用 本篇博客将为朋友们分享一款神器:JeecgBoot. JeecgBoot 是一款基于代码生成器的低代码开发平台,零代码开发.采用前后端分离架构:Sp ...

  5. 前后端分离项目_七个开源的 Spring Boot 前后端分离项目,一定要收藏

    来自公众号:江南一点雨 前后端分离已经在慢慢走进各公司的技术栈,根据松哥了解到的消息,不少公司都已经切换到这个技术栈上面了.即使贵司目前没有切换到这个技术栈上面,松哥也非常建议大家学习一下前后端分离开 ...

  6. crm开源系统 tp框架_八个开源的 Spring Boot 前后端分离项目,一定要收藏!

    点击蓝色字关注我们 前后端分离已经在慢慢走进各公司的技术栈,不少公司都已经切换到这个技术栈上面了.即使贵司目前没有切换到这个技术栈上面,也非常建议大家学习一下前后端分离开发,以免在公司干了两三年,SS ...

  7. springboot jwt token前后端分离_「转」七个开源的 Spring Boot 前后端分离项目,建议收藏加转载...

    其实前后端分离本身并不难,后段提供接口,前端做数据展示,关键是这种思想.很多人做惯了前后端不分的开发,在做前后端分离的时候,很容易带进来一些前后端不分时候的开发思路,结果做出来的产品不伦不类,因此松哥 ...

  8. 技术动态 | 北京大学计算机所邹磊教授研究组开源面向 RDF 知识图谱的自然语言问答系统 gAnswer...

    项目网站: http://ganswer.gstore-pku.com/ 代码地址: https://github.com/pkumod/gAnswer OpenKG发布地址: http://open ...

  9. springboot jwt token前后端分离_7个开源的 Spring Boot 前后端分离项目,一定要收藏!...

    前后端分离已经在慢慢走进各公司的技术栈,根据松哥了解到的消息,不少公司都已经切换到这个技术栈上面了.即使贵司目前没有切换到这个技术栈上面,松哥也非常建议大家学习一下前后端分离开发,以免在公司干了两三年 ...

最新文章

  1. Redis3.0 集群
  2. 【opencv】14.cv::cvtColor函数转换颜色空间时使用CV_RGB2BGR与CV_BGR2RGB结果一样的原因
  3. [html] 用一个div模拟textarea的实现
  4. 论文浅尝 | 神经网络与非神经网络简单知识问答方法的强基线分析
  5. C/C++中volatile关键字的作用
  6. (4.28)for xml path 在合并拆分上的作用演示
  7. Apache Kafka 2.7.0 稳定版发布
  8. liunx 加入域控_[整理篇]linux加入windows域之完美方案
  9. 汇编 内存段划分和寄存器
  10. 【antdesign】表单布局和校验
  11. 迪赛智慧数——柱状图(堆叠极扇图):近5年各行业员工离职率
  12. TiddlyWiki笔记入门之多维度标签--发散思维与收敛思维的乐园。
  13. JavaWeb之【web站点的欢迎页面】
  14. gophp解释器_golang底层用什么语言实现的
  15. Git(2)-Git常用的操作和概念
  16. java中sql去除游标_SQL游标 - java.beggar - BlogJava
  17. 2018拼多多校招【最大乘积】Python解法
  18. Fastapi学习笔记(一)
  19. html显示已知范围标量,【单选题】下列哪个HTML5元素用于显示已知范围内的标量测量...
  20. 进阿里了——分享一波进大厂经验

热门文章

  1. php 485串口通信,485串口通信中的常见问题
  2. enum java 原理_Java 枚举实现原理
  3. 商淘多b2b2c商城系统怎么在个人电脑上安装_社交电商系统开发是否有价值?
  4. 172. 阶乘后的零
  5. resin php,resin竟然开始支持PHP
  6. 计算机系统安装和维护实验,2计算机系统安装维护实验报告.doc
  7. 【jstl】jstl的基本操作
  8. java 文件下载 【学习记录】
  9. JDK11使用IDEA,配置JavaFX
  10. 微信小程序学习做动画效果