Requirements:
- Pyenv for installing Python 3.11+
- Recommended installation method: the "automatic installer"
i.e.
curl https://pyenv.run | bash
- Recommended installation method: the "automatic installer"
i.e.
- Poetry for installing dependencies
- Recommended installation method: the "official installer"
i.e.
curl -sSL https://install.python-poetry.org | python3 -
- Recommended installation method: the "official installer"
i.e.
Install dependencies:
# Install Python specified in `.python-version`
pyenv install
# Install dependencies specified in `pyproject.toml`
poetry install
If pyenv install
gives an error about _tkinter
, you can ignore it.
If you see other errors, you may have to investigate.
If you have trouble with Poetry not picking up pyenv's python installation,
try poetry env remove --all
and then poetry install
again.
Typecheck and run tests:
./check.sh
# or individually:
poetry run mypy .
poetry run pytest -vv
Run the compiler on a source code file:
./compiler.sh COMMAND path/to/source/code
where COMMAND
may be one of these:
interpret
TODO(student): add more
Recommended VSCode extensions:
- Python
- Pylance
- autopep8