2022-01-26 14:59:05 +00:00
|
|
|
# <img src="https://raw.githubusercontent.com/azur1s/bobbylisp/master/assets/icon.png" width="35"> bobbylisp
|
2022-01-21 23:43:50 +00:00
|
|
|
another lisp dialect
|
2022-01-26 03:54:07 +00:00
|
|
|
> Also available on https://git.ablecorp.us/azur/bobbylisp
|
2022-01-21 23:43:50 +00:00
|
|
|
|
2022-01-26 14:59:05 +00:00
|
|
|
## <img src="https://raw.githubusercontent.com/azur1s/bobbylisp/master/assets/icon.png" width="25"> Installation
|
2022-02-01 20:10:42 +00:00
|
|
|
```console
|
2022-01-26 14:54:40 +00:00
|
|
|
$ bash <(curl -s https://raw.githubusercontent.com/azur1s/bobbylisp/master/install.sh)
|
2022-01-24 20:08:41 +00:00
|
|
|
```
|
|
|
|
The binary will be installed in `~/bin/blspc` run it with:
|
2022-02-01 20:09:34 +00:00
|
|
|
```console
|
2022-02-01 20:07:50 +00:00
|
|
|
$ blspc help
|
2022-01-24 20:08:41 +00:00
|
|
|
```
|
|
|
|
|
2022-01-26 14:59:05 +00:00
|
|
|
### <img src="https://raw.githubusercontent.com/azur1s/bobbylisp/master/assets/icon.png" width="15"> Example
|
2022-02-01 20:09:34 +00:00
|
|
|
```console
|
2022-02-01 20:07:50 +00:00
|
|
|
$ blspc compile ./example/hello.blsp
|
|
|
|
$ blspc run ./hello.bsm
|
2022-01-26 03:54:07 +00:00
|
|
|
Hello, World!
|
|
|
|
```
|
|
|
|
|
2022-01-26 14:59:05 +00:00
|
|
|
## <img src="https://raw.githubusercontent.com/azur1s/bobbylisp/master/assets/icon.png" width="25"> Progress:
|
2022-01-27 23:46:39 +00:00
|
|
|
DONE:
|
|
|
|
- Parsing, Compiling, Running(VM)
|
2022-01-28 00:07:38 +00:00
|
|
|
- Intrinsic:
|
2022-02-01 19:57:35 +00:00
|
|
|
- `fun`, `do`, `print`, `if`
|
|
|
|
- Math:
|
|
|
|
- `+` , `add`
|
|
|
|
- `-` , `sub`
|
|
|
|
- `*` , `mul`
|
|
|
|
- `/` , `div`
|
2022-01-28 00:07:38 +00:00
|
|
|
|
2022-01-27 09:08:21 +00:00
|
|
|
TODO:
|
2022-01-28 00:33:58 +00:00
|
|
|
- Prove turing complete
|
2022-01-27 23:46:39 +00:00
|
|
|
- Do the intrinsic left
|
2022-01-27 09:08:21 +00:00
|
|
|
- Quote, Quasiquote, etc.
|
|
|
|
- Optimizing
|
2022-02-01 19:57:35 +00:00
|
|
|
- Remove unnecessary copying in the entire codebase (also with `.unwrap()`)
|