Commit Graph

101 Commits

Author SHA1 Message Date
Scott Richmond
f93eacf5f5 Fix keyword function calling 2022-04-03 17:03:22 -04:00
Scott Richmond
7a4034d920 Keywords can be called as passed fns 2022-04-03 15:39:41 -04:00
Scott Richmond
9fd69b57f3 Don't throw in test code 2022-04-03 14:49:20 -04:00
Scott Richmond
31d407c181 Interpret structs 2022-04-03 14:48:23 -04:00
Scott Richmond
7c4751dda8 Actually scan structs. 2022-04-03 14:48:08 -04:00
Scott Richmond
21af8acf2e Parse structs 2022-04-03 14:34:30 -04:00
Scott Richmond
6b9fc590a6 Add struct to parse-expr 2022-04-03 14:25:14 -04:00
Scott Richmond
33a086b312 Copy-paste struct parse from hashmap 2022-04-03 14:24:28 -04:00
Scott Richmond
811a57be1c Add struct to scanner; new reserved words. 2022-04-03 14:22:01 -04:00
Scott Richmond
98530b0f0f Add a static analysis note 2022-03-20 20:15:51 -04:00
Scott Richmond
41e9b4d9dd Some light speed testing: Ludus is 1000x slower than Clojure. 2022-03-20 20:15:43 -04:00
Scott Richmond
52f357765d Light cleanup 2022-03-20 19:39:01 -04:00
Scott Richmond
b7d49cbf5d Test recursion. It works! 2022-03-20 19:35:41 -04:00
Scott Richmond
272951a411 Add several functions to the prelude 2022-03-20 19:35:29 -04:00
Scott Richmond
3f8207fa41 Add ns for ludus data 2022-03-20 19:35:16 -04:00
Scott Richmond
9ce1f29977 Update notes 2022-03-20 19:25:20 -04:00
Scott Richmond
b5a5be9dd0 Change tuple representation 2022-03-20 19:21:55 -04:00
Scott Richmond
d02bc05209 Finally: add functions! 2022-03-20 19:17:15 -04:00
Scott Richmond
3b1f2460a8 Write basic test case 2022-03-20 18:32:31 -04:00
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