A Lisp dialect inspired by Clojure targeting Python 3.
Disclaimer: Basilisp is a project I created to learn about Python, Clojure, and hosted languages generally. It should not be used in a production setting.
Basilisp is developed on GitHub and hosted on PyPI. You can fetch Basilisp using a simple:
pip install basilispOnce Basilisp is installed, you can enter into the REPL using:
basilisp replBasilisp documentation can help guide your exploration at the REPL. Additionally, Basilisp features many of the same functions and idioms as Clojure so you may find guides and documentation there helpful for getting started.
This project uses pipenv to
manage the Python virtual environment and project dependencies. pipenv
can be installed using Homebrew (on OS X) or pip otherwise:
brew install pipenvpip install --user pipenvAdditionally, pyenv is recommended to
manage versions of Python readily on your local development environment.
Setup of pyenv is somewhat more specific to your environment, so see
the documentation in the repository for more information.
To prepare your pipenv environment, you need to install dependencies
and install Basilisp as an editable dependency:
make setup-devAfterwards, you can start up the REPL for development with a simple:
make replIf dependencies are added or changed afterwards, you may need to
make setup-dev again before attempting to start the REPL again or
run tests.
Basilisp automates linting, running tests, and type checking using
Tox. All three steps can be performed
using a simple make target:
make testTesting is performed using PyTest. Type checking is performed by MyPy. Linting is performed using Prospector.
Eclipse Public License 1.0