ratel-core

High performance JavaScript to JavaScript compiler with a Rust core

Github星跟踪图

Ratel

ratel-core

Travis CI
Crates.io
Discord
Gitter

Ratel is a high performance JavaScript to JavaScript compiler with a Rust core. Its goal is to take newest versions of JavaScript as input, and produce output that's compatible with older versions of the language.

Online REPL with Wasm, courtesy of cmtt.

This repo is split in two separate folders:

  • core contains the main Rust codebase that does all the heavy lifting.
  • ffi contains the Node.js wrapper around the Rust core with Neon bindings.

For common usage checkout the ratel-cli repo.

Performance

While still incomplete, the Parser part of Ratel can run circles around even the fastest parsers built in JavaScript, here it is compared to Esprima using the ratel FFI.

ratel chart

The benchmarks visualized above can be executed in the ffi folder using the npm run benches command.

Contributors

This project is created and maintained by Maciej Hirsz with the help of awesome contributors. Extended thanks to:

  • cmtt for work on the Node.js FFI and testing.
  • Jan Schulte for the initial version of transformer and codegen.

The smirky Ratel by the courtesy of A. L. Palmer.

License

This code is distributed under the terms of both the MIT license
and the Apache License (Version 2.0), choose whatever works for you.

See LICENSE-APACHE and LICENSE-MIT for details.

主要指标

概览
名称与所有者ratel-rust/ratel-core
主编程语言Rust
编程语言Rust (语言数: 5)
平台
许可证Apache License 2.0
所有者活动
创建于2016-04-21 00:03:01
推送于2023-01-07 02:42:38
最后一次提交2019-03-11 12:40:49
发布数11
最新版本名称v0.7.0 (发布于 )
第一版名称v0.3.0 (发布于 )
用户参与
星数435
关注者数13
派生数17
提交数520
已启用问题?
问题数68
打开的问题数26
拉请求数65
打开的拉请求数19
关闭的拉请求数13
项目设置
已启用Wiki?
已存档?
是复刻?
已锁定?
是镜像?
是私有?