Giter Site home page Giter Site logo

rasata / doppio Goto Github PK

View Code? Open in Web Editor NEW

This project forked from plasma-umass/doppio

1.0 3.0 0.0 75.45 MB

Breaks the browser language barrier (includes a plugin-free JVM).

Home Page: http://plasma-umass.github.io/doppio-demo

License: MIT License

JavaScript 0.33% TypeScript 78.03% Java 21.64%

doppio's Introduction

doppio: A JVM in TypeScript v0.5.0

Join the chat at https://gitter.im/plasma-umass/doppio Build Status Build status npm version david-dm-status-badge david-dm-status-badge

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.

To learn more, read some documentation, or read our academic paper (alt. link w/ no paywall) published at PLDI 2014!

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 grunt-cli installed globally
    • 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.

Testing

Run the full test suite using node.js:

grunt test

Run the full test suite in a web browser:

grunt test-browser

Run a specific test by invoking the test runner manually:

node build/dev-cli/console/test_runner.js classes/test/Strings

Command-line Usage

Run doppio with node.js (after grunt release-cli):

./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:

grunt examples

The code is in docs/examples.

doppio's People

Contributors

amahdy avatar anishchandran avatar bmcdorman avatar brucespang avatar danxexe avatar deathcap avatar emeryberger avatar fortianwei avatar gitter-badger avatar hanyuei avatar hrj avatar icodesometime avatar int3 avatar jerith666 avatar jleahey avatar lavelle avatar mdmueller avatar owaishanif786 avatar paulbgd avatar paulwagener avatar pbrazdil avatar perimosocordiae avatar qxfusion avatar solant avatar warlander avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.