-
31d407c181
Interpret structs
Scott Richmond
2022-04-03 14:48:23 -0400
-
7c4751dda8
Actually scan structs.
Scott Richmond
2022-04-03 14:48:08 -0400
-
21af8acf2e
Parse structs
Scott Richmond
2022-04-03 14:34:30 -0400
-
6b9fc590a6
Add struct to parse-expr
Scott Richmond
2022-04-03 14:25:14 -0400
-
33a086b312
Copy-paste struct parse from hashmap
Scott Richmond
2022-04-03 14:24:28 -0400
-
811a57be1c
Add struct to scanner; new reserved words.
Scott Richmond
2022-04-03 14:22:01 -0400
-
98530b0f0f
Add a static analysis note
Scott Richmond
2022-03-20 20:15:51 -0400
-
41e9b4d9dd
Some light speed testing: Ludus is 1000x slower than Clojure.
Scott Richmond
2022-03-20 20:15:43 -0400
-
52f357765d
Light cleanup
Scott Richmond
2022-03-20 19:39:01 -0400
-
b7d49cbf5d
Test recursion. It works!
Scott Richmond
2022-03-20 19:35:41 -0400
-
272951a411
Add several functions to the prelude
Scott Richmond
2022-03-20 19:35:29 -0400
-
3f8207fa41
Add ns for ludus data
Scott Richmond
2022-03-20 19:35:16 -0400
-
9ce1f29977
Update notes
Scott Richmond
2022-03-20 19:25:20 -0400
-
b5a5be9dd0
Change tuple representation
Scott Richmond
2022-03-20 19:21:55 -0400
-
d02bc05209
Finally: add functions!
Scott Richmond
2022-03-20 19:17:15 -0400
-
3b1f2460a8
Write basic test case
Scott Richmond
2022-03-20 18:32:31 -0400
-
1f19a0ea1e
Decide against refactoring beyond cljfmt, write basic fn parser
clean-up-parser
Scott Richmond
2022-03-20 18:30:30 -0400
-
bfef7a8e66
cljfmt all the things
Scott Richmond
2022-03-20 17:58:38 -0400
-
59ccc00963
Add cljfmt to lein project
Scott Richmond
2022-03-20 17:41:26 -0400
-
5da8090d2b
Reindent things; start work on named fns; decide to refactor things
Scott Richmond
2022-03-20 17:37:44 -0400
-
0f64307ba8
Add happy path for anon simple fns
Scott Richmond
2022-03-20 17:01:21 -0400
-
3fde297e07
Import prelude
Scott Richmond
2022-03-20 16:41:02 -0400
-
14b6e31081
Move prelude functions out to prelude ns
Scott Richmond
2022-03-20 16:40:50 -0400
-
1d9559402c
Add panic
Scott Richmond
2022-03-20 16:33:59 -0400
-
0f2e30a8de
Update more notes
Scott Richmond
2022-03-20 16:15:27 -0400
-
d924b5fa6f
Update notes
Scott Richmond
2022-03-20 16:15:07 -0400
-
85f7bc8c08
Add hashmaps, synthetics, native functions
Scott Richmond
2022-03-20 15:46:49 -0400
-
11a51cf708
Interpret match expressions
Scott Richmond
2022-03-20 14:14:15 -0400
-
069e3b4a7b
Parse multi-clause match expressions
Scott Richmond
2022-03-20 13:28:05 -0400
-
e4e984bacd
Parse single-clause match expressions
Scott Richmond
2022-03-19 20:52:13 -0400
-
584ddaf705
Skip comments, the dumb solution.
Scott Richmond
2022-03-19 19:21:29 -0400
-
2a099298f0
Reindent things
Scott Richmond
2022-03-19 19:09:21 -0400
-
90f6fa8b19
Few extra points
Scott Richmond
2022-03-19 19:08:55 -0400
-
270f6100b7
Add a stub of a static analyzer.
Scott Richmond
2022-03-19 19:08:12 -0400
-
7a2fabd131
Clean up notes to reflect current state of affairs
Scott Richmond
2022-03-19 19:07:46 -0400
-
35d398c2e0
Add hashmap parsing. It's basic.
Scott Richmond
2022-03-19 19:01:32 -0400
-
8368d6362d
Add tuple patterns & matching
Scott Richmond
2022-03-19 18:23:15 -0400
-
a4c5927ec4
Notes to selves
Scott Richmond
2022-03-19 17:30:41 -0400
-
3f0feab83b
Start work on the interpreter
Scott Richmond
2022-03-19 17:28:48 -0400
-
5baa4fe3ba
Expose parse function
Scott Richmond
2022-03-19 17:28:30 -0400
-
fc035eb1ba
Simplify forward declarations
Scott Richmond
2022-03-19 17:28:18 -0400
-
e890c44fbd
Improve and expose parse-script
Scott Richmond
2022-03-19 17:26:51 -0400
-
4c186bae3a
Better syncing in collection literals
Scott Richmond
2022-03-19 17:26:13 -0400
-
faba605329
if* -> if, let* -> let
Scott Richmond
2022-03-19 12:30:59 -0400
-
85d4f99030
Delete old/broken versions of let & if
Scott Richmond
2022-03-19 12:30:05 -0400
-
3d080403dc
Reindent--clean up
Scott Richmond
2022-03-19 12:29:15 -0400
-
aa7f2ac8fc
Get if-exprs fully wired up
Scott Richmond
2022-03-19 12:28:13 -0400
-
e616dcd453
Fix bug with empty blocks
Scott Richmond
2022-03-19 12:27:47 -0400
-
37b9560ee3
Fix typo
Scott Richmond
2022-03-19 12:27:30 -0400
-
83392e3ac4
Start work on if errors
Scott Richmond
2022-03-13 19:43:57 -0400
-
a05feea32a
Notes on getting to a working
if
Scott Richmond
2022-03-12 14:42:16 -0500
-
21bef073d0
Fully fix lets; re-discover unfinished business with ifs
Scott Richmond
2022-03-12 14:39:27 -0500
-
1a1f720358
Fix infinite hang bug with panics
Scott Richmond
2022-03-12 13:30:33 -0500
-
0e4673a1a1
Make some progress notes
Scott Richmond
2022-02-21 22:30:27 -0500
-
f96ec45d1b
Improve parse-script; start work on let and pattern
Scott Richmond
2022-02-21 15:38:47 -0500
-
8ec432c7a0
Tidy up expr-sync
Scott Richmond
2022-02-21 15:03:32 -0500
-
33fad7656c
Improve parse-block
Scott Richmond
2022-02-21 14:57:23 -0500
-
3357248b3c
Add
do
and import
reserved words
Scott Richmond
2022-02-21 14:54:14 -0500
-
4edfbcb04d
Improve parse-set; do not swallow errors on unterminated collections
Scott Richmond
2022-02-21 14:03:58 -0500
-
d23a561eda
Improve parse-list (based on parse-tuple)
Scott Richmond
2022-02-21 13:56:46 -0500
-
61b25ca22d
Clean up parse-tuple
Scott Richmond
2022-02-21 13:46:41 -0500
-
e6b204a54a
Better error handling, in script & tuple
Scott Richmond
2022-02-21 13:43:30 -0500
-
9414109312
Finally get error handling right?
Scott Richmond
2022-02-21 13:16:22 -0500
-
a4cecc3d01
Make some progress on good parser errors
Scott Richmond
2022-02-20 19:33:24 -0500
-
3fde2cb52b
Atoms keep tokens. Add panic mode, begin better errors.
Scott Richmond
2022-02-20 18:40:16 -0500
-
2751b7428f
Whitespace should not return errors
Scott Richmond
2022-02-20 18:39:18 -0500
-
23e2e95e77
Better errors? WIP
Scott Richmond
2022-02-19 14:34:07 -0500
-
40367d7e57
Update number lexing comments
Scott Richmond
2022-02-19 14:20:09 -0500
-
5d78d5f823
Tonksy-fmt
Scott Richmond
2022-02-18 17:49:02 -0500
-
d6a547bdcb
Odds & ends
Scott Richmond
2022-02-18 17:25:36 -0500
-
a71db0e640
Delete prints; next -> peek; remove loop in parse-expr
Scott Richmond
2022-02-15 22:48:36 -0500
-
96b30ece05
if exprs; add expect, accept, accept-many helpers
Scott Richmond
2022-02-15 19:45:39 -0500
-
a35da1498e
Remove expect fns; declare parse-word.
Scott Richmond
2022-02-15 18:27:22 -0500
-
531c85054c
Stub of let works.
Scott Richmond
2022-02-15 13:24:09 -0500
-
6b61a10349
Stub of
let
Scott Richmond
2022-02-15 13:17:01 -0500
-
84663d0952
Add
=
(as replacement for <-
now that we have let
)
Scott Richmond
2022-02-15 13:16:46 -0500
-
25da37d093
Start, but do not finish, work on
let
expressions
Scott Richmond
2022-02-14 20:09:10 -0500
-
3fa280402c
Enforce non-empty blocks
Scott Richmond
2022-02-14 18:29:29 -0500
-
dd47244b78
Fix bug in script & block
Scott Richmond
2022-02-14 18:13:56 -0500
-
05f55e6a84
Working synthetic parsing; simplify
Scott Richmond
2022-02-14 18:05:29 -0500
-
98b147f5b8
Factor out keyword parsing, parse bare words
Scott Richmond
2022-02-14 17:32:29 -0500
-
40db886843
Keep working on parser, take notes, stuff & stuff
from-scratch
Scott Richmond
2022-02-14 16:47:08 -0500
-
e2f8b0cb6c
Individuate reserved words in tokens
Scott Richmond
2022-02-14 16:46:42 -0500
-
3806683c99
Start work on parsing. (Really?!)
Scott Richmond
2022-02-08 19:43:08 -0500
-
32390a4847
Delete repl cruft
Scott Richmond
2022-02-08 19:42:51 -0500
-
d56ea970b6
Remove unused
from-keyword
function
Scott Richmond
2022-02-08 19:42:31 -0500
-
c3426624c9
A mostly-complete scanner!
Scott Richmond
2022-02-06 18:20:55 -0500
-
bbe20d4af1
Putter around in scanner
Scott Richmond
2022-02-06 12:36:03 -0500
-
2eb7960cc9
Start work on words, add double-colon, fix terminators
Scott Richmond
2022-02-05 19:24:39 -0500
-
eb5f5233b6
Scan strings
Scott Richmond
2022-01-22 18:07:04 -0500
-
1c60dce605
Add backslash
Scott Richmond
2022-01-15 14:40:46 -0500
-
d8273946f5
Update reserved words
Scott Richmond
2022-01-08 17:36:48 -0500
-
1ca1e4df25
Fix a bunch of things, hack some
Scott Richmond
2022-01-08 17:19:56 -0500
-
5777458f2d
Add nrepl deps
Scott Richmond
2022-01-07 13:36:33 -0500
-
6b00dfe1f5
Fiddle with the scanner.
Scott Richmond
2021-12-28 18:24:42 -0500
-
425c021fa1
leinify
Scott Richmond
2021-10-30 14:51:35 -0400
-
d6052bf2b8
cljs project setup
Scott Richmond
2021-10-21 12:54:57 -0400
-
a5d9cf38fb
Initial commit
Scott Richmond
2021-10-21 12:47:28 -0400