-
-
Notifications
You must be signed in to change notification settings - Fork 1
/
index.mld
17 lines (9 loc) · 1.01 KB
/
index.mld
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
{1 quickjs}
[quickjs] is a set of OCaml bindings for {{:https://bellard.org/quickjs}QuickJS}. QuickJS is a small and embeddable JavaScript engine. It supports the ES2020 specification including modules, asynchronous generators, proxies and BigInt.
The project exposes two libraries:
- [quickjs.bindings] with the QuickJS C API.
- The library {{!module: quickjs}quickjs} which exposes a polished API on top of [quickjs.bindings] with the same shape as the JavaScript API.
{2 Motivation}
The purpose of this project is to provide the same behaviour as the JavaScript engines from browsers {{:https://spidermonkey.dev}SpiderMonkey}, {{:https://developer.apple.com/documentation/javascriptcore}JavaScriptCore}, {{:https://github.com/chakra-core/ChakraCore}ChakraCore}, {{:https://v8.dev/}v8}) into OCaml. So code that runs in the browser (via {{:https://melange.re}Melange}) can be run in native with the same results.
{2 Status}
This is a work in progress, and currently only includes bindings to [RegExp] (binded to [libregexp.c]).