Skip to content

Commit b951229

Browse files
committed
update README
1 parent 07d8dda commit b951229

File tree

1 file changed

+4
-3
lines changed

1 file changed

+4
-3
lines changed

README.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,12 @@ Here's a taste for what it can do
1010
![example](docs/example.png)
1111

1212
You can tour the language and run it in the browser [here](http://lispy.amirbolous.com/)
13+
1314
![tour](docs/img.png)
1415

1516
You can find the source code for this sandbox [here](https://github.com/amirgamil/lispysandbox).
1617

17-
What Lispy supports
18+
## What Lispy supports
1819
- [x] Basic arithmetic operations (`+`, `-`, `*`, `/`, `%`, `#`)
1920
- `(# a b)` means raise a to the power of b
2021
- [x] Relational operators (`>`, `<`, `>=`, `<=`, `=`) and logical operators (`and`, `or`, `not`å)
@@ -26,14 +27,14 @@ What Lispy supports
2627
- [x] Macros (`quasiquote`, threading via `->`. `->>`, and a host of other ones)
2728
- [x] Tail call optimization
2829
- [x] Lists with a core library that supports functional operations like `map`, `reduce`, `range` and several more
29-
- [x] Hashmaps
30+
- [x] Hash maps
3031

3132
## High Level Overview
3233
Lispy is written as a tree-walk interpreter in Go with a recursive-descent parser. It also has a separate lexer, although most Lisp dialects are simple enough to parse that the lexing and parsing can be combined into one stage.
3334

3435
Because Lispy is interpreted, not compiled, it does not have a separate macro-expansion stage (that would typically be done before code is evaluated). Instead, Lispy handles macros as special functions, which it evaluates twice: once to generate the syntax of the code, and the second to run this generated syntax (as a macro would).
3536

36-
The interpreter code can be found at `pkg/lispy/`, the integration tests can be found at `tests/` and the main Lispy library at `lib/lispy.lpy`. Here's a short sample lispy in action:
37+
The interpreter code can be found at `pkg/lispy/`, the integration tests can be found at `tests/` and the main Lispy library at `lib/lispy.lpy`. Here's a short sample of lispy in action:
3738

3839
```
3940
(each (seq 18)

0 commit comments

Comments
 (0)