Skip to content

ZipPy is a Python3 interpreter on top of Truffle framework

License

Notifications You must be signed in to change notification settings

manufactory/zippy

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

zippy-logo-200-rounded.jpg

ZipPy Build Status

Standard JVM Graal JVM
Linux Ubuntu 14.04.4 Build Status Build Status
Mac OSX 10.11 Build Status Build Status

ZipPy is a fast and lightweight Python 3 implementation built using the Truffle framework. ZipPy leverages the underlying Java JIT compiler and compiles Python programs to highly optimized machine code at runtime.

ZipPy is currently maintained by Secure Systems and Software Laboratory at the ​University of California, Irvine.

Short instructions (Using Standard JDK):

Prerequisites:
  1. Install the most recent JDK 8

Getting ZipPy:

  1. Create a working directory ($ZIPPY_HOME)

  2. Clone mxtool:

     $ cd $ZIPPY_HOME
     $ git clone https://github.com/graalvm/mx.git
    
  3. Append the mx build tool directory to your PATH.

     $ export PATH=$ZIPPY_HOME/mx:$PATH
    
  4. Clone ZipPy:

     $ git clone https://github.com/securesystemslab/zippy.git
    
  5. Get all ZipPy's dependencies:

     $ cd $ZIPPY_HOME/zippy
     $ mx spull
    
  6. Create a file $ZIPPY_HOME/zippy/mx.zippy/env and add JDK path

     JAVA_HOME=/path/to/jdk8
     DEFAULT_VM=server
    

For instructions on using Graal JVM: please visit the ZipPy Wiki.

Build:

$ cd $ZIPPY_HOME/zippy
$ mx build

Run:

$ cd $ZIPPY_HOME/zippy
$ mx python <file.py>

Test:

$ cd $ZIPPY_HOME/zippy
$ mx unittest python.test

For more details and instructions for downloading and building the system, please visit the ZipPy Wiki.

About

ZipPy is a Python3 interpreter on top of Truffle framework

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 90.4%
  • Java 4.7%
  • HTML 1.9%
  • Jupyter Notebook 1.4%
  • XSLT 1.0%
  • C 0.3%
  • Other 0.3%