Go to file
2024-05-18 10:12:04 +03:00
bin do not print out result by default, only with the -p option 2021-06-01 07:42:45 +07:00
mad add eval.mad 2020-12-24 08:44:57 +07:00
src ability to give custom env into readEval function 2022-07-04 15:55:38 +07:00
test add support for special characters in strings: vertical tab, null 2020-12-21 09:13:27 +07:00
.gitignore unit tests for Tokenizer 2020-12-15 09:03:54 +07:00
composer.json Mark in composer.json that this package replaces maddy83/madlisp. 2024-05-18 10:12:04 +03:00
LICENSE add license file 2020-12-06 11:11:21 +07:00
phpunit.xml unit tests for Tokenizer 2020-12-15 09:03:54 +07:00
README.md Rename composer package from maddy83/madlisp to peklaiho/madlisp. Repo is now on Github. 2024-05-18 08:09:33 +03:00

MadLisp

MadLisp is a Lisp interpreter written in PHP.

Requirements

The project requires PHP 7.4 or newer and Composer.

Quickstart

Create a new directory and require the project using composer:

$ mkdir mylisp
$ cd mylisp
$ composer require peklaiho/madlisp

Use the vendor/bin/madlisp executable to start the interpreter. Start the REPL with the -r option:

$ vendor/bin/madlisp -r
>

You can evaluate Lisp code interactively inside the REPL:

> (+ 1 2 3)
6

Alternatively you can evaluate a file that contains Lisp code:

$ echo "(+ 1 2 3)" > mylisp.mad
$ vendor/bin/madlisp mylisp.mad
6

Documentation

The full documentation is available on the project website.

Status

The language seems stable at this point so I am releasing it as 1.0. Please report any issues.

License

MIT