Commit Graph

28 Commits

Author SHA1 Message Date
Nathan Braswell
9aeadfc224 Add names to BuiltinFunctions so they can be compiled when used by reference, much less hacky and allows our new BF version to be compiled 2020-05-10 21:33:47 -04:00
Nathan Braswell
f10630c66c First working object tests! 2020-05-10 19:29:28 -04:00
Nathan Braswell
3f501a5c2f Added correct compiling of top level vector values, including with meta 2020-05-10 00:50:46 -04:00
Nathan Braswell
4cd7b22c86 Added set-meta! to interp and compile 2020-05-10 00:17:30 -04:00
Nathan Braswell
991a353805 Add compiling with-meta/meta for vectors only to C 2020-05-09 13:30:38 -04:00
Nathan Braswell
5d473d698d Somewhat in the middle - removed list, added meta for interpreter, not yet implemented in compiler 2020-05-09 11:52:32 -04:00
Nathan Braswell
c61b9d3c22 fixed closeing with strings 2020-04-25 13:05:56 -04:00
Nathan Braswell
e74c883132 throw and catch implemented 2020-04-23 13:04:27 -04:00
Nathan Braswell
ae150b17fa Added atoms! atom, deref, swap!, literal support 2020-04-23 00:15:39 -04:00
Nathan Braswell
2baad06e8c Add string literals and symbols, print support for both as well as lists and vectors 2020-04-22 21:10:46 -04:00
Nathan Braswell
19ae75b819 Fix the quoting compile 2020-04-20 01:22:45 -04:00
Nathan Braswell
d726705845 Add creation and indexing of lists and vectors, with their literal forms. Compiling quote has a bug though, and passes through - will have to consider how to fix 2020-04-20 01:16:34 -04:00
Nathan Braswell
b505c021f2 Implemented closures 2020-04-19 21:52:21 -04:00
Nathan Braswell
50817b567f Fix my fact impl, add print and println 2020-04-18 13:36:46 -04:00
Nathan Braswell
cc833015c3 Can compile functions depending on other top level functions and values 2020-04-17 10:31:38 -04:00
Nathan Braswell
bed1871ad3 Check type of main return 2020-04-14 23:59:52 -04:00
Nathan Braswell
3141ad1d1d parameters working 2020-04-14 23:53:12 -04:00
Nathan Braswell
ed01b5f580 Parameterless functions working 2020-04-14 23:34:23 -04:00
Nathan Braswell
8da9190b3d Add type checking to make sure compiled lang is safe 2020-04-14 14:35:01 -04:00
Nathan Braswell
7cf8ca8b80 Function calls work, builtin functions operating on ints 2020-04-13 23:42:32 -04:00
Nathan Braswell
4b44277d30 emit if and true/false/nil constants 2020-04-13 22:55:25 -04:00
Nathan Braswell
05c77e3ad9 let* generated 2020-04-13 22:45:40 -04:00
Nathan Braswell
813d31cb2b Working on C generator for k_prime, can compile single number return 2020-04-12 15:52:45 -04:00
Nathan Braswell
cb54429d1a Remove keywords and maps from k_prime to make it leaner 2020-04-12 00:25:11 -04:00
Nathan Braswell
c4078aa5e1 added optional_WS back 2020-04-10 23:11:17 -04:00
Nathan Braswell
7a6a1e0d82 reformat 2020-04-10 23:08:31 -04:00
Nathan Braswell
721dc203be Loop function can be simpler 2020-04-10 23:05:05 -04:00
Nathan Braswell
7bc58e904e BF implementation as GLL macros 2020-04-10 22:46:53 -04:00