EPython is a typed-subset of the Python language useful for extending the language with new builtin types and methods.
The goal is to be able to write things like NumPy, SciPy, Pandas, bitarray, and any other extension module of Python in this language and get equivalent or better perfomance than writing it using the C-API typically provided.
This project is in development and extremely alpha. You should not use this for anything.
Learn more on this talk Travis Oliphant gave at PyData Austin 2019.
If you are interested in contributing to the design and goals, then join the Discussion at OpenTeams Slack
pip install epython
epython extmodule.epy --backend=cpython
Produces a compiled extension module for the given Python backend.
Install Docker, then run:
docker build -t epython-wasm -f ./development/Dockerfile .
From the root of the repository.
To run the interactive session:
docker run -p 8008:8000 -t epython-wasm:latest
Create an environment for epython:
$ conda env create --file conda/dev.yaml
Activate the epython environment:
$ conda activate epython
Install it locally in development mode:
$ pip install -e .