|
ac1f8aef03
|
Implement dotimes and add tests
|
2021-04-10 01:16:03 +02:00 |
|
|
70ce321517
|
Add test for apply function
|
2021-04-10 01:02:33 +02:00 |
|
|
f576081d22
|
Implement apply and rudimentary read-line
|
2021-04-10 00:17:54 +02:00 |
|
|
ba0915f384
|
Add plan to each test
|
2021-04-09 00:01:27 +02:00 |
|
|
0cbc43927d
|
Add tests for 'or'
|
2021-04-08 23:52:03 +02:00 |
|
|
c79b2aabf4
|
Fix 'and': return nil if it has no operands
|
2021-04-08 23:49:04 +02:00 |
|
|
6bff33af20
|
Fix parsing comment at end of file
|
2021-04-08 23:33:09 +02:00 |
|
|
4aaff13d91
|
Add debug mode for lexer
|
2021-04-08 23:32:53 +02:00 |
|
|
cf9f90c19b
|
Fix cond.t
cond.t was not actually using equal but cond works anyway.
|
2021-04-08 22:10:58 +02:00 |
|
|
46d904535a
|
Add implicit block to do macro
|
2021-04-08 21:53:21 +02:00 |
|
|
e6cb6bd047
|
Add test for throw and catch
|
2021-04-08 21:49:00 +02:00 |
|
|
34d4de92f0
|
Implement macros catch and throw
|
2021-04-08 21:48:42 +02:00 |
|
|
f50550f882
|
Catch rogue returns in top-level
|
2021-04-08 21:47:57 +02:00 |
|
|
8bdc8232f9
|
Add loop macro and a test
|
2021-04-07 23:31:28 +02:00 |
|
|
2e784310fb
|
Add test for blocks
|
2021-04-07 23:17:08 +02:00 |
|
|
a355528492
|
Implement block mechanism and macros block, return and return-from
|
2021-04-07 23:16:44 +02:00 |
|
|
fe23edcb90
|
Add tests for two more edge cases
|
2021-04-06 23:54:22 +02:00 |
|
|
7d6a988e88
|
let.t - Remove debug comments
|
2021-04-06 23:50:56 +02:00 |
|
|
732a3f87b4
|
Add tests for when and unless testing for implicit progn
|
2021-04-06 23:40:10 +02:00 |
|
|
b930ed8eba
|
Fix macros when and unless
Both support implicit progn, not just one expression.
|
2021-04-06 23:36:06 +02:00 |
|
|
5c37830ef4
|
Replace two checks with slurp_token
|
2021-04-06 23:34:16 +02:00 |
|
|
9cc16ed55a
|
Add parser function to parse multiple expressions
|
2021-04-06 23:30:21 +02:00 |
|
|
42b5567c29
|
Utilize peek_token where possible
|
2021-04-06 23:17:38 +02:00 |
|
|
f86caf6b5f
|
Add example fizzbuzz
|
2021-04-06 23:00:00 +02:00 |
|
|
8e6929c0a9
|
Add euler examples as tests
|
2021-04-06 22:41:49 +02:00 |
|
|
cae6fef76d
|
Add second euler problem as example
|
2021-04-06 22:21:26 +02:00 |
|
|
cd769b36de
|
Remove non standard range function
Let example define its own range function using do.
|
2021-04-06 22:11:52 +02:00 |
|
|
7ca4bad9b0
|
Implement do macro
|
2021-04-06 22:11:37 +02:00 |
|
|
1ff74f4f6c
|
Fix grammar
|
2021-04-06 22:10:55 +02:00 |
|
|
b14ed6d9d1
|
Add slurp_token for easier parsing
|
2021-04-06 21:11:13 +02:00 |
|
|
c954f0216f
|
when, unless: check for wrongful evaluation
when and unless must not evaluate their bodies if the condition does not require it.
|
2021-04-05 04:07:22 +02:00 |
|
|
9c0db610bf
|
Add range function and euler1 example
|
2021-04-05 04:04:23 +02:00 |
|
|
d07c480390
|
Set +x for run.pl
|
2021-04-05 04:03:47 +02:00 |
|
|
b4e46a9b40
|
Add tests for mod function
|
2021-04-05 03:53:44 +02:00 |
|
|
941bd17ac6
|
Add mod function
|
2021-04-05 03:50:48 +02:00 |
|
|
41984b0083
|
Float support
|
2021-04-05 03:50:33 +02:00 |
|
|
9d2665e2e8
|
Fix grammar
|
2021-04-05 03:18:53 +02:00 |
|
|
03dfa8f188
|
Implement let*
|
2021-04-05 03:06:44 +02:00 |
|
|
f1e7da781b
|
Add comment function for tests
|
2021-04-05 00:25:53 +02:00 |
|
|
7f1283eecc
|
Improve bool system
lisp has true in form of t and false in form of nil
|
2021-04-05 00:06:49 +02:00 |
|
|
61df548e00
|
Implement set
|
2021-04-04 23:13:17 +02:00 |
|
|
0ec88feeb6
|
Simplify parsing of identifiers
|
2021-04-04 22:55:26 +02:00 |
|
|
02ac5dd3fc
|
Fix run.pl
|
2021-04-04 22:15:13 +02:00 |
|
|
2d668371e2
|
Rework ctx system
|
2021-04-04 22:15:04 +02:00 |
|
|
4a42695a27
|
Add function filter and a test
|
2021-04-04 02:34:05 +02:00 |
|
|
1df85fd67c
|
Add another function test
|
2021-04-04 02:33:49 +02:00 |
|
|
7db1cce024
|
Improve test description for math.t
|
2021-04-04 01:53:30 +02:00 |
|
|
e163fdce59
|
Add when, unless
|
2021-04-04 01:53:18 +02:00 |
|
|
0b19227810
|
Add cond macro
|
2021-04-04 01:44:47 +02:00 |
|
|
ed59a6a04e
|
Improve macro parsing
|
2021-04-04 01:44:28 +02:00 |
|