Commit Graph

82 Commits

Author SHA1 Message Date
Scott Richmond
1f19a0ea1e Decide against refactoring beyond cljfmt, write basic fn parser 2022-03-20 18:30:30 -04:00
Scott Richmond
bfef7a8e66 cljfmt all the things 2022-03-20 17:58:38 -04:00
Scott Richmond
59ccc00963 Add cljfmt to lein project 2022-03-20 17:41:26 -04:00
Scott Richmond
5da8090d2b Reindent things; start work on named fns; decide to refactor things 2022-03-20 17:37:44 -04:00
Scott Richmond
0f64307ba8 Add happy path for anon simple fns 2022-03-20 17:01:21 -04:00
Scott Richmond
3fde297e07 Import prelude 2022-03-20 16:41:02 -04:00
Scott Richmond
14b6e31081 Move prelude functions out to prelude ns 2022-03-20 16:40:50 -04:00
Scott Richmond
1d9559402c Add panic 2022-03-20 16:33:59 -04:00
Scott Richmond
0f2e30a8de Update more notes 2022-03-20 16:15:27 -04:00
Scott Richmond
d924b5fa6f Update notes 2022-03-20 16:15:07 -04:00
Scott Richmond
85f7bc8c08 Add hashmaps, synthetics, native functions 2022-03-20 15:46:49 -04:00
Scott Richmond
11a51cf708 Interpret match expressions 2022-03-20 14:14:15 -04:00
Scott Richmond
069e3b4a7b Parse multi-clause match expressions 2022-03-20 13:28:05 -04:00
Scott Richmond
e4e984bacd Parse single-clause match expressions 2022-03-19 20:52:13 -04:00
Scott Richmond
584ddaf705 Skip comments, the dumb solution. 2022-03-19 19:21:29 -04:00
Scott Richmond
2a099298f0 Reindent things 2022-03-19 19:09:21 -04:00
Scott Richmond
90f6fa8b19 Few extra points 2022-03-19 19:08:55 -04:00
Scott Richmond
270f6100b7 Add a stub of a static analyzer. 2022-03-19 19:08:12 -04:00
Scott Richmond
7a2fabd131 Clean up notes to reflect current state of affairs 2022-03-19 19:07:46 -04:00
Scott Richmond
35d398c2e0 Add hashmap parsing. It's basic. 2022-03-19 19:01:32 -04:00
Scott Richmond
8368d6362d Add tuple patterns & matching 2022-03-19 18:23:15 -04:00
Scott Richmond
a4c5927ec4 Notes to selves 2022-03-19 17:30:41 -04:00
Scott Richmond
3f0feab83b Start work on the interpreter 2022-03-19 17:28:48 -04:00
Scott Richmond
5baa4fe3ba Expose parse function 2022-03-19 17:28:30 -04:00
Scott Richmond
fc035eb1ba Simplify forward declarations 2022-03-19 17:28:18 -04:00
Scott Richmond
e890c44fbd Improve and expose parse-script 2022-03-19 17:26:51 -04:00
Scott Richmond
4c186bae3a Better syncing in collection literals 2022-03-19 17:26:13 -04:00
Scott Richmond
faba605329 if* -> if, let* -> let 2022-03-19 12:30:59 -04:00
Scott Richmond
85d4f99030 Delete old/broken versions of let & if 2022-03-19 12:30:05 -04:00
Scott Richmond
3d080403dc Reindent--clean up 2022-03-19 12:29:15 -04:00
Scott Richmond
aa7f2ac8fc Get if-exprs fully wired up 2022-03-19 12:28:13 -04:00
Scott Richmond
e616dcd453 Fix bug with empty blocks 2022-03-19 12:27:47 -04:00
Scott Richmond
37b9560ee3 Fix typo 2022-03-19 12:27:30 -04:00
Scott Richmond
83392e3ac4 Start work on if errors 2022-03-13 19:43:57 -04:00
Scott Richmond
a05feea32a Notes on getting to a working if 2022-03-12 14:42:16 -05:00
Scott Richmond
21bef073d0 Fully fix lets; re-discover unfinished business with ifs 2022-03-12 14:39:27 -05:00
Scott Richmond
1a1f720358 Fix infinite hang bug with panics 2022-03-12 13:30:33 -05:00
Scott Richmond
0e4673a1a1 Make some progress notes 2022-02-21 22:30:27 -05:00
Scott Richmond
f96ec45d1b Improve parse-script; start work on let and pattern 2022-02-21 15:38:47 -05:00
Scott Richmond
8ec432c7a0 Tidy up expr-sync 2022-02-21 15:03:32 -05:00
Scott Richmond
33fad7656c Improve parse-block 2022-02-21 14:57:23 -05:00
Scott Richmond
3357248b3c Add do and import reserved words 2022-02-21 14:54:14 -05:00
Scott Richmond
4edfbcb04d Improve parse-set; do not swallow errors on unterminated collections 2022-02-21 14:03:58 -05:00
Scott Richmond
d23a561eda Improve parse-list (based on parse-tuple) 2022-02-21 13:56:46 -05:00
Scott Richmond
61b25ca22d Clean up parse-tuple 2022-02-21 13:46:41 -05:00
Scott Richmond
e6b204a54a Better error handling, in script & tuple 2022-02-21 13:43:30 -05:00
Scott Richmond
9414109312 Finally get error handling right? 2022-02-21 13:16:22 -05:00
Scott Richmond
a4cecc3d01 Make some progress on good parser errors 2022-02-20 19:33:24 -05:00
Scott Richmond
3fde2cb52b Atoms keep tokens. Add panic mode, begin better errors. 2022-02-20 18:40:16 -05:00
Scott Richmond
2751b7428f Whitespace should not return errors 2022-02-20 18:39:18 -05:00