This package compiles a subset of Python to Aporia. The Aporia language is described in this paper.
The Backus-Naur-Form Grammar of the Python source language subset is specified here:
You can install the package with
pip install aporiapy
You can use the compiler via the command line interface
aporiapy file_to_be_compiled.py
This will generate an spp file containing the Aporia source code. Additional options can be found with aporiapy -h
Dependency management and the publishing of packages is managed by uv.
You can install it with pip install uv
. The interpreter can be run with uv run aporiapy
. Tests can be run with uv run pytest
This project builds upon the work done in the seminar Interpretation and Compilation of Programming Languages at the University of Basel. Thanks to the contributions of Ruben Hutter, Luca Gloor, and Ephraim Siegfried, as well as the guidance from the seminar instructors Ali Ajorian and Erick Lavoie.