assemblyscript/README.md

2.1 KiB

AssemblyScript NEXT

Build Status

AssemblyScript compiles strictly typed TypeScript to WebAssembly using Binaryen. Unlike more complex toolchains, asc generates minimal WebAssembly modules while being just an npm install away.

Examples

A few early examples to get an idea:

  • Conway's Game of Life
    Continuously updates the cellular automaton and visualizes its state on a canvas.

  • i64 polyfill
    Exposes WebAssembly's i64 operations to JavaScript using 32-bit integers (low and high bits).

Or browse the compiler tests for a more in-depth overview of what's supported already.

Getting started

Note that this version of the compiler is relatively new and does not yet support some features a TypeScript programmer might expect, e.g., strings, arrays and classes. It is not on npm, yet, but you can already try it out today:

$> git clone https://github.com/AssemblyScript/assemblyscript.git
$> cd assemblyscript
$> npm install
$> npm link

Author your module using either

and run:

$> asc yourModule.ts

See the AssemblyScript wiki for additional documentation.

Building

Building an UMD bundle to dist/assemblyscript.js (does not bundle binaryen.js which remains an external dependency):

$> npm run build

Running the tests:

$> npm test