OCamlScript

OCaml 的 JavaScript 后端
授权协议 GPLv2
开发语言 JavaScript
所属分类 程序开发、 其他开发相关
软件类型 开源软件
地区 不详
投 递 者 姜增
操作系统 Linux
开源组织
适用人群 未知
 软件概览

OCamlScript 是 OCaml 编译器的 JavaScript 后端。OCamlScript 的用户可以编写类型安全,高性能的 OCaml 代码,在有 JavaScript 执行引擎的任意平台部署生成的 JavaScript。

每个 OCaml 模块都映射到一个相应的 JavaScript 模块,并且名字被保留下来,因此:

  • 该堆栈跟踪被保留,生成的代码是可调试的(无论是否有 sourcemap)。

  • OCamlScript 生成的模块可以直接用到其它 JavaScript 代码。例如,你可以从 JavaScript 调用 OCaml 标准库的 List 模块的 List.length 函数。

OCamlScript 当前只支持 Linux 和 Mac OS X,将来会支持 Windows。

简单示例

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

OCamlScript 生成的代码类似:

function sum(n) {
  var v = 0;
  for(var i = 0; i<= n; ++i){
    v += i;
  }
    return v;
}
 相关资料
  • 问题内容: 有没有办法在javascript正则表达式中实现与否定的后向等效?我需要匹配一个不以一组特定字符开头的字符串。 如果在字符串的开头找到匹配的部分,似乎无法找到执行此操作的正则表达式。负向后看似乎是唯一的答案,但是javascript没有答案。 编辑:这是我想工作的正则表达式,但它不: 因此它将与“ jim”或“ m”中的“ m”匹配,但与“ jam”不匹配 问题答案: 后向断言得到了接

  • 为什么可以获取后端数据,但是要绑定的时候就显示空值 绑定数据会显示但是也会报错

  • 有大佬知道这里参数后面跟个问号是啥意思啊,是写错了吗,还是可选啊

  • 展示是这样的 正常的序号是 1,2,3,4... js 如何去掉 .0 呢 用过 Math.floor,Math.trunc 都不行

  • 问题内容: 我有一个JavaScript代码,需要向其中添加睡眠/等待功能。我正在运行的代码已经在一个函数中,例如: 我听说可能的解决方案可能包括 但我不确定在这种情况下如何使用它。 我不能使用PHP,因为我的服务器不支持PHP,尽管使用jQuery可以。 问题答案: JS没有睡眠功能,它具有 setTimeout() 或setInterval() 函数。 如果您可以将暂停后需要运行的代码移到回调

  • 我正在我的项目中尝试Java8,我被困在与我的构建过程相关的错误中。 我正在使用ANT脚本,在某个时刻,我正在使用一些javascript(嵌入到ANT中)来执行一些特定于构建的操作。导致错误的脚本部分如下所示: 该项目使用Java 7或Java 6构建得很好,但在使用Java 8时,它会给我带来一些错误。这些错误与JS引擎的升级有关。 特别是我得到了以下例外: javax。剧本ScriptExc

  • 我试图将json对象列表从Javascript发送到Spring Boot后端。这是我的函数在前端的外观: 所以我发送了一个类似:[{“name”:“foo1”,“description”:“bar1”,“value”:“4”},{“name”:“foo2”,“description”:“bar2”,“value”:“10”}] 但我在后端无法捕捉到它: AssetDto看起来像: 因此,在本例中

  • 我有后端应用程序写在java ee和泽西。当我使用JavaScript Fetch API将数据发送到restendpoint时,我看到过滤器被激发了两次。一旦它没有授权头,第二个它有。当我尝试从web浏览器打开我的网站时,这个过滤器只被调用一次。为什么会发生这种事。也许是因为CORS? 下面我的日志从单一的帖子,两个打印从同一个过滤器。 第二次通话