2018-07-18 10:22:00 +02:00
2018-07-07 14:00:30 +02:00
2018-07-13 20:42:58 +02:00
2018-07-16 22:53:36 +02:00
2018-07-07 16:27:05 +02:00
2018-06-01 21:36:19 +02:00
2018-07-08 21:03:25 +02:00
2018-07-07 17:14:45 +02:00
2018-07-07 14:00:30 +02:00
2018-07-14 16:03:50 +02:00

RustPython

A Python Interpreter written in Rust 🐍 😱 🤘.

Build Status

Usage (Not implemented yet)

To test RustPython, do the following:

$ git clone https://github.com/RustPython/RustPython
$ cd RustPython
$ cargo run demo.py
42

Or use the interactive shell:

$ cargo run
Welcome to rustpython
>>>>> 2+2
4

Or use pip to install extra modules:

$ cargo run -m pip install requests

Goals

  • Full python environment entirely in Rust (not CPython bindings)
  • A clean implementation without compatibility hacks

Code organization

- parser: python lexing, parsing and ast
- vm: python virtual machine
- src: using the other subcrates to bring rustpython to life.

The files in the top level directory are from windelbouwman/rspython which contains an implementation of the parser and vm in src/

An alternative implementation of python virtual machine that are compatible with CPython parser are from shinglyu/RustPython and is located in the VM/ folder.

We are in the process of merging the two implementation to form a single implementation.

Community

Chat with us on gitter.

Credit

The initial work was based on windelbouwman/rspython and shinglyu/RustPython

Description
A Python Interpreter written in Rust
Readme MIT 109 MiB
Languages
Rust 84.5%
Python 14.5%
JavaScript 0.7%
EJS 0.1%
CSS 0.1%