aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-07-25Synchronize funccall generate. Uses correct func index nowdec05eba
2020-07-25Resolve cross-file references (with mutex). Not donedec05eba
2020-07-25Use ast pointers to fix resolving, remove try/throwing macrosdec05eba
2020-07-25Add mutex for lhs expr, add error for missing lhs expr for func, structdec05eba
TODO: Use mutex in lhs expr and set resolved_type
2020-07-25Add pub keyword, more import stuff, optimize hash mapdec05eba
Hash map now stores hash of keys to reduce the number of hash operations. Positive: faster insert/get. Negative: more space required (to store usize hash).
2020-07-25Set file scope when parser is created. No need to resolve for every @import ↵dec05eba
instance
2020-07-25Add struct, import caching, binop ops etcdec05eba
2020-07-25Resolve variable referencesdec05eba
2020-07-25Add ssa stringdec05eba
2020-07-25Fix bugsdec05eba
Fix hash map bug on rorder (invalid size). Fix string to int/float conversion in tokenizer. Add more ssa functions
2020-07-25Refactor ssadec05eba
2020-07-25Fix race in amal_compiler_load_filedec05eba
2020-07-25Turn ast resolve/ssa generation thread work to generic workflow - better for ↵dec05eba
future steps
2020-07-25Comment out functions to be removeddec05eba
2020-07-25Starting on ssadec05eba
2020-07-25Load @import files relative to the file that uses @importdec05eba
2020-07-25Fail compilation on errordec05eba
2020-07-25Use ast_initdec05eba
2020-07-25Temporary remove ast resolvingdec05eba
2020-07-25Start on resolving ast. Add recursive declaration checkdec05eba
2020-07-25Add single line, multiline commentsdec05eba
2020-07-25oofdec05eba
2020-07-25Add check for duplicate variable namesdec05eba
2020-07-25asdfdec05eba
2020-07-25Modify hash algorithmdec05eba
2020-07-25Fix hash_map_get not returning valuedec05eba
2020-07-25asdfdec05eba
2020-07-25Fix hash map bug with reorder nodesdec05eba
2020-07-25Add hash mapdec05eba
2020-07-25Add ast resolving using multiple threadsdec05eba
Fix issue where not all files are parsed
2020-07-25Cleanup, fix syntax defdec05eba
2020-07-25Code cleanupdec05eba
2020-07-25Simplify (cleanup) binop parsingdec05eba
2020-07-25Use setjmp, longjmp instead of return_if_error to improve performancedec05eba
2020-07-25Add arithmetic (binop) parsingdec05eba
2020-07-25Add variable declaration without assignmentdec05eba
2020-07-25Readd requirement for semicolon, makes things much simpler (for user as well)dec05eba
2020-07-25Use 'fn' to define closure to make parsing/reading the language easierdec05eba
It caused issues when you have parentheses to surround math expression, for example: ((func() + 34) * 54) is easier to parse if closure has to begin with 'fn'. Also removed requirement for semicolons. Semicolons can't even be used optionally yet.
2020-07-25Add string, variable and number. Fix identifier match against const and vardec05eba
2020-07-25Cleanup.. im stupiddec05eba
2020-07-25Shitdec05eba
2020-07-25Fix crash in parser import, optimize tokenizer_consume_if to not reparse if ↵dec05eba
already parsed
2020-07-25Update implementation docdec05eba
2020-07-25Fix compiler join thread, fix compiliation with clangdec05eba
2020-07-25fix crashesdec05eba
2020-07-25Fix scoped allocator alloc bug, do all processing in non-main threads. Main ↵dec05eba
only join
2020-07-25Use multiple threads to parsedec05eba
2020-07-25Remove unused allocator from bufferdec05eba
2020-07-25Restrict buffer_deinit to scoped allocatordec05eba
2020-07-25Separate buffers from general allocation, but still have them in scoped ↵dec05eba
allocator