Commit Graph

15 Commits

Author SHA1 Message Date
Nathan Braswell
e271feed24 Implemented $ references for functions and parameters, which are also parsed for real now, along with the result. Setup for locals added, but not it's backend. Added pretty interesting add-dict-to-env function to collections.kp, which has also been added to put collections stuff in one place. 2021-07-20 00:37:27 -04:00
Nathan Braswell
f254f11f8d Generating first (in at least wasm3) runnable code! Added type, function, export, and code sections, with instructions and whatnot! 2021-04-20 01:36:38 -04:00
Nathan Braswell
e1fd8abd4f Started working on basic wasm encoding/serialization. Added binary_file_writing, generalized arity comparison operators, bitwise operators, parsing of hex numbers, and wasm w/ memory section deserialization 2021-04-19 01:39:04 -04:00
Nathan Braswell
ed3b2ce743 Finished implementing real Damas-Hindley-Milner type system with let polymorphism! 2021-01-24 23:10:27 -05:00
Nathan Braswell
0a056ebef2 Limited monomorphic-only Damas-Hindley-Milner implemented in types 2021-01-24 02:53:55 -05:00
Nathan Braswell
7850866068 Start working on STLC again, this one's coming along. Primitives, builtins, and calls, but no lambda yet 2021-01-18 02:04:35 -05:00
Nathan Braswell
1f8fb59220 Fully functional now, removing set!, set-idx!, array-with-len, and making concat a builtin. Also, added 2 fun rules to new_kraken that allow nesting of new_kraken and k_prime languages 2021-01-17 19:57:56 -05:00
Nathan Braswell
7d7b2bd6d5 Add error/recover, rep->repl with error catching, and add it to scope so you can do it recursively and debug and whatnot. Also make it take in the grammer to repl with, and fix and commit the new_kraken work from earlier 2021-01-14 23:43:50 -05:00
Nathan Braswell
ddd5ce7032 Fix some longstanding string bugs and stop cheating with read-string in standard_grammer, implementing both unescape and string-to-int in k' 2021-01-04 00:11:15 -05:00
Nathan Braswell
6c0a46099a New kraken with import and #lang passed start symbol 2021-01-02 13:55:07 -05:00
Nathan Braswell
4ed9af307f Port method stuff over to new_kraken 2020-12-22 19:24:54 -05:00
Nathan Braswell
8d80f38f76 Fix a few parsing bugs at both levels, port some of the method demo over to new_kraken 2020-12-22 02:40:54 -05:00
Nathan Braswell
5152e1d109 Now actually have standard_grammar and with_import in scope let and all other ways in, having implemented let-vrec for mutually recursive vaus and fixing bugs. Tiny placeholder new_kraken definition and test. 2020-12-20 02:10:10 -05:00
Nathan Braswell
0d07d22995 Move to wrap and unwrap 2020-09-06 12:19:19 -04:00
Nathan Braswell
8e47cb2ec2 Move to prelude and add enough to run bf (with modifications) 2020-08-29 00:33:04 -04:00