MaxGraey / TurboScript

Super charged JavaScript for parallel programming which compiles to asm.js and WebAssembly

Home Page:https://01alchemist.com/projects/turboscript/playground

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

TurboScript

Build Status AppVeyor Stories in Ready Greenkeeper badge

Super charged JavaScript for parallel programming and WebAssembly

Throughput Graph

    @             _________
     \____       /         \
     /    \     /   ____    \
     \_    \   /   /    \    \
       \    \ (    \__/  )    )          ________  _____  ___  ____
        \    \_\ \______/    /          /_  __/ / / / _ \/ _ )/ __ \
         \      \           /___         / / / /_/ / , _/ _  / /_/ /
          \______\_________/____"-_____ /_/  \____/_/|_/____/\____/

TurboScript is an experimental programming language for parallel programming for web which compiles to JavaScript (asm.js) and WebAssembly (targeting post-MVP). The syntax is similar to TypeScript (Hardly trying to fill the gaps) and the compiler is open source and written in TypeScript.

This is still an experiment and isn't intended for real use yet. The biggest issue is that the generated code currently doesn't delete anything (basic manual memory management is added). Also the WebAssembly specification is still being developed and the current binary format may stop working when WebAssembly is officially released. WebAssembly binary format is up-to-date, please feel free to open issues if it stop working or need a new feature.

TurboScript is forked from ThinScript and changed a lot, so there will be no going back.

Join Slack

You need an invitation to join slack. open a ticket with your email address. I will make it happen.

Roadmap

  • Parallel JavaScript
  • WebAssembly Emitter
  • Basic malloc and free
  • ASM.JS Emitter
  • Import external functions with namespace
  • Array Data Type
  • Parallel WebAssembly (post-MVP)

Wiki

Documentations can be found at wiki (under construction 🚧)

Useful links

Credit

Lexical analysis, Parsing, Checking codes are borrowed from Evan Wallace's thinscript

Now enjoy - Wow! this snail is fast

Wow! this snail is fast

About

Super charged JavaScript for parallel programming which compiles to asm.js and WebAssembly

https://01alchemist.com/projects/turboscript/playground

License:Apache License 2.0


Languages

Language:TypeScript 49.4%Language:JavaScript 46.1%Language:HTML 4.1%Language:CSS 0.3%Language:Shell 0.0%Language:Batchfile 0.0%