Skip to content

EphraimSiegfried/aporiapy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Aporiapy

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: L_if bnf

Installation

You can install the package with

pip install aporiapy

Usage

Command Line Interface

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

Contributing

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

Acknowledgements

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.

About

A compiler which translates a subset of Python to the Aporia language

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages