An open API service indexing awesome lists of open source software.

https://github.com/alii/arc

⌒ JavaScript on the BEAM
https://github.com/alii/arc

beam compiler engine erlang javascript

Last synced: about 5 hours ago
JSON representation

⌒ JavaScript on the BEAM

Awesome Lists containing this project

README

          

> [!NOTE]
> arc is an **extremely early** research project, tread carefully!

# arc ⌒

JavaScript on the BEAM


js



Arc is a JavaScript engine written in [Gleam](https://gleam.run) — the whole language, not a subset. It runs wherever the BEAM runs: on Erlang/OTP, and in the browser through [AtomVM](https://www.atomvm.net) compiled to WebAssembly.


It implements the language itself — closures, generators, async/await, classes, proxies, typed arrays, plus Intl and Temporal. The engine is small and host-agnostic: it knows nothing about the world outside ECMAScript. You embed it in a BEAM program and give it the globals and host functions you want — timers, I/O, a concurrency model — instead of inheriting a fixed runtime.


Tested against [test262](https://github.com/tc39/test262) on every commit:


test262 conformance chart

---

```sh
gleam run -- file.js # run a script
gleam test # unit tests
TEST262_EXEC=1 gleam test # full test262 suite
TEST262=1 gleam test # parser-only test262
```