Adding a readme

This commit is contained in:
Zoe Roux
2021-12-06 11:17:18 +01:00
parent 9efc6f5ed1
commit a49d907560
2 changed files with 27 additions and 18 deletions
-18
View File
@@ -1,18 +0,0 @@
NAME = hal
all: $(NAME)
$(NAME):
stack build
ln -fs `stack path --local-install-root`/bin/$(NAME)-exe $(NAME)
clean:
stack clean
fclean:
stack clean
$(RM) $(NAME)
re: fclean all
.PHONY: all clean fclean re $(NAME)
+27
View File
@@ -1 +1,28 @@
# HAL
A lisp interpreter in Haskell based on [Chez-Scheme](https://github.com/cisco/chezscheme). This was a thrid year project at Epitech.
## Supported features
- Ints, Floats, Bools, Symbols & Strings
- Cons (aka lists)
- Procedures (via a define or a lambda)
- [REPL](https://en.wikipedia.org/wiki/Read%E2%80%93eval%E2%80%93print_loop) (Read, Evaluate, Print & Loop)
- Strange shenanigans of Chez-Scheme (for example `'(quote 3)` yields `'3`)
## Builtins
- define, let, lambda
- quote
- cons, car, cdr
- eq?, atom?
- +, -, *, div, mod, <
## Usage
``./hal [-i] [FILES]``
-i: to use REPL feature
[FILES]: list of files to run. If -i is specified, the files are run before prompting the user
## Authors
- [Zoe Roux](https://github.com/AnonymusRaccoon/HAL)