doppio: A JVM in TypeScript v0.5.0
doppio is a double shot of espresso. In this case, it's also a POSIX-compatible runtime system plus a JVM written in TypeScript and an active research project of the PLASMA group at the University of Massachusetts.
To try doppio now, head to the live demo page.
You can also get in touch via our mailing list or via the IRC channel #plasma-umass on Freenode.
Getting & Building the Code
Before attempting to build doppio, you must have the following installed:
- Node v6.0 or higher
- There is a bug that prevents you from compiling DoppioJVM with Node v4 and below.
- NPM package
npm install -g grunt-cli
- Java 8 JDK
- (Recommended) Yarn
If you are on Windows, you will need the following installed:
- Git (must be on your PATH)
- Python (must be on your PATH)
- A version of Visual Studio
Run the following commands to build doppio. Note that your first time building may take some time, as the build script will download the entire Java Class Library.
git clone https://github.com/plasma-umass/doppio.git cd doppio yarn install # npm install should work if you do not have yarn grunt release # For browser integration. grunt release-cli # For command-line use.
Run the full test suite using node.js:
Run the full test suite in a web browser:
Run a specific test by invoking the test runner manually:
node build/dev-cli/console/test_runner.js classes/test/Strings
Run doppio with node.js (after
./doppio classes.demo.Fib 7 ./doppio -jar my_application.jar ./doppio -cp my/class/path SomeClass
Integrating Into Your Site
Check out our Developer Guide for information on how you can integrate doppio into your website!
You can also build and interact with a simple example application with:
The code is in