Skip to content
Very slowly rethinking Jython through toy implementations
Java Python Other
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
src
.gitattributes
.gitignore
README.md
pom.xml

README.md

The Very Slow Jython Project

The aim of the Very Slow Jython project is to re-think implementation choices in the Jython core, through the gradual, narrated evolution of a toy implementation, starting from zero code.

This project is as much a writing project as a programming one. The narrative of the development is in reStructuredText using Sphinx.

Contents

Without building the project, GitHub does a reasonable job of rendering it, except for the contents. The main sections are these:

  1. Background to the Very Slow Jython Project
  2. A Tree-Python Interpreter
  3. Some Help from the Reference Interpreter
  4. An Interpreter in Java for the Python AST
  5. Type and Operation Dispatch
  6. Interpretation of Simple Statements
  7. Architecture
  8. Interpreter Structure

Building the Project

This project builds with Apache Maven. As it stands, the primary output is the narrative. It uses the excellent sphinx-maven-plugin, which delivers HTML output to the directory target/site/sphinx, when you type:

mvn site

Organisation of Sources

The narrative of the Very Slow Jython project will be maintained as documentation in reStructuredText, in the same repository as the code itself. However the "false starts", various failed implementation ideas, will stay around so that the narrative can make reference to them.

Currently, I'm not sure how I want to organise the successive versions: probably they will exist as versions, concurrently in the package structure, at the cost of some duplication.

You can’t perform that action at this time.