Skip to content

Javascript Superset Targeting WASM Compilation

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT
Notifications You must be signed in to change notification settings

chadc1050/Hermes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Hermes

Windows Linux Run

Hermes aims to be a drop in replacement for JS to allow for seamless opt in for WASM targeting. It will be a super set of JS, with additional opt in features to improve performance. With Hermes, you will be able to take any existing JS package and easily compile it with minimal overhead. The benefit of this is ultimatley that the developer will be able to access the existing massive ecosystem of JS packages, whilst being able to write JS interopable code.

Roadmap

Emulated JS Compiler

  1. AST Lowering
    • Reader
    • Lexer
    • Parser
  2. HLIR Lowering
    • Type inferencing and Checking
  3. MLIR Lowering
  4. LLVM Lowering
    • CodeGen

Feature Enhanced Compiler

  • Traits
  • Explicit References

StdLib

  • JS Interpreter Runtime Standard Library Compatibility
    • NodeJS
    • BunJS
    • Deno
    • Just
    • Txiki
    • Napa
    • Elsa
    • Window
    • Additional Features

Built-In Testing Library

  • Syntactic similarity to Jest

Package Manager

  • API Compatibility with existing JS Package Managers (NPM, Yarn, ect...)
  • API for accessing Hermes-first packages

Toolchain Extensions

  • Conversion tool (TS -> JS -> Hermes)

Documentation

Links

WASM

Javascript

LLVM

About

Javascript Superset Targeting WASM Compilation

Topics

Resources

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT

Stars

Watchers

Forks

Releases

No releases published

Languages