Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/purefunctor/amalgam-lisp
LISP-like interpreted language implemented in Python.
https://github.com/purefunctor/amalgam-lisp
amalgam-lisp lisp pypi-package python python37 python38
Last synced: 4 months ago
JSON representation
LISP-like interpreted language implemented in Python.
- Host: GitHub
- URL: https://github.com/purefunctor/amalgam-lisp
- Owner: purefunctor
- License: mit
- Created: 2020-06-18T07:41:01.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2021-05-25T02:02:23.000Z (over 3 years ago)
- Last Synced: 2024-10-12T23:26:22.764Z (4 months ago)
- Topics: amalgam-lisp, lisp, pypi-package, python, python37, python38
- Language: Python
- Homepage: https://amalgam-lisp.readthedocs.io/en/latest/
- Size: 348 KB
- Stars: 3
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
LISP-like interpreted language implemented in Python.# Installation & Basic Usage
This package can be installed through PyPI:
```bash
$ pip install amalgam-lisp
```
This makes the `amalgam` command-line script available.
```bash
$ amalgam # To invoke the REPL
$ amalgam hello.am # To load and run a file
$ amalgam --expr="(+ 42 42)" # To evaluate an expression
```# Development Setup
Install the following dependencies:
* Python 3.7 & 3.8
* [Poetry](https://python-poetry.org)
* [Nox](https://nox.thea.codes/en/stable/) (Optional)Clone and then navigate to the repository:
```bash
$ git clone https://github.com/PureFunctor/amalgam-lisp.git
$ cd amalgam-lisp
```Install the dependencies for the project:
```bash
$ poetry install
$ poetry run pre-commit install
```## Running Tests / Coverage Reports / Building Documentation
This project uses `nox` for automating various tasks like running tests and building documentation.
```
$ nox
```Alternatively, tests, coverage reports, and the documentation can be generated manually.
```bash
$ poetry run coverage run -m pytest
$ poetry run coverage report -m
$ poetry run coverage html
$ poetry run sphinx-build docs docs/build
```