Skip to main content

Aporia AST

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.

Metadata

Release files for aporiapy 0.1.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for aporiapy 0.1.2
File Size Uploaded
aporiapy-0.1.2.tar.gz 92.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for aporiapy 0.1.2
File Interpreter ABI Platform
aporiapy-0.1.2-py3-none-any.whl Python 3 none any Details

Total release size: 99.8 kB

Release files / aporiapy-0.1.2.tar.gz

Download URL aporiapy-0.1.2.tar.gz
Size 92.4 kB
Tags Source
SHA-256 checksum
How to use checksums
0190cc71059c7e94ee1475e6d7f33afec25d706f606e91fe10c329bffe83d6b2
BLAKE2b-256 checksum
How to use checksums
6cee66c9c71cb12ace15c2d6f7abb30dd044f85ec003b08e719a9c1b1d236c98
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.6.0

Release files / aporiapy-0.1.2-py3-none-any.whl

Download URL aporiapy-0.1.2-py3-none-any.whl
Size 7.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ca6b97571da6c519c1b6b487bd85bffdca548e2a86055f0dffb2f326a24cbcb8
BLAKE2b-256 checksum
How to use checksums
359144ee7c62ad1b8d1f447380d7bfc38201893ffa840f5bce5cfd2fcff640e2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.6.0

Release history Release notifications | RSS feed

This release

0.1.2 This release

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page