Age | Commit message (Collapse) | Author | |
---|---|---|---|
2020-07-25 | Start on amal program | dec05eba | |
Fix mutex issue in lhs expr which can cause a deadlock when a file has an error and throws and doesn't close the mutex and another thread waits for that mutex. The mutex can instead be removed and ignore race conditions which are uncommon. This should improve memory usage and performance. | |||
2020-07-25 | Fix errors from pedantic check | dec05eba | |
2020-07-25 | Add assignment, while, extern, function signature type, start on bytecode | dec05eba | |
2020-07-25 | Progressing on bytecode (to c), fix ssa resolving multiple times | dec05eba | |
2020-07-25 | Start on bytecode. Commit before os switch | dec05eba | |
2020-07-25 | Test errors, stop working on error | dec05eba | |
2020-07-25 | Synchronize funccall generate. Uses correct func index now | dec05eba | |
2020-07-25 | Resolve cross-file references (with mutex). Not done | dec05eba | |
2020-07-25 | Use ast pointers to fix resolving, remove try/throwing macros | dec05eba | |
2020-07-25 | Add mutex for lhs expr, add error for missing lhs expr for func, struct | dec05eba | |
TODO: Use mutex in lhs expr and set resolved_type | |||
2020-07-25 | Add pub keyword, more import stuff, optimize hash map | dec05eba | |
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-25 | Add struct, import caching, binop ops etc | dec05eba | |
2020-07-25 | Resolve variable references | dec05eba | |
2020-07-25 | Add ssa string | dec05eba | |
2020-07-25 | Load @import files relative to the file that uses @import | dec05eba | |
2020-07-25 | Use ast_init | dec05eba | |
2020-07-25 | Start on resolving ast. Add recursive declaration check | dec05eba | |
2020-07-25 | Add check for duplicate variable names | dec05eba | |
2020-07-25 | Add ast resolving using multiple threads | dec05eba | |
Fix issue where not all files are parsed | |||
2020-07-25 | Cleanup, fix syntax def | dec05eba | |
2020-07-25 | Code cleanup | dec05eba | |
2020-07-25 | Simplify (cleanup) binop parsing | dec05eba | |
2020-07-25 | Use setjmp, longjmp instead of return_if_error to improve performance | dec05eba | |
2020-07-25 | Add arithmetic (binop) parsing | dec05eba | |
2020-07-25 | Add variable declaration without assignment | dec05eba | |
2020-07-25 | Readd requirement for semicolon, makes things much simpler (for user as well) | dec05eba | |
2020-07-25 | Use 'fn' to define closure to make parsing/reading the language easier | dec05eba | |
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-25 | Add string, variable and number. Fix identifier match against const and var | dec05eba | |
2020-07-25 | Fix crash in parser import, optimize tokenizer_consume_if to not reparse if ↵ | dec05eba | |
already parsed | |||
2020-07-25 | Fix compiler join thread, fix compiliation with clang | dec05eba | |
2020-07-25 | fix crashes | dec05eba | |
2020-07-25 | Use multiple threads to parse | dec05eba | |
2020-07-25 | Separate buffers from general allocation, but still have them in scoped ↵ | dec05eba | |
allocator | |||
2020-07-25 | Fixed CHECK_RESULT macro, use scoped allocator | dec05eba | |
Scoped allocator gives us better performance and cleanup code for error cases is much cleaner | |||
2020-07-25 | Fixed CHECK_RESULT macro, use scoped allocator | dec05eba | |
Scoped allocator gives us better performance and cleanup code for error cases is much cleaner | |||
2020-07-25 | Add result check for msvc | dec05eba | |
2020-07-25 | Add grammar above parser functions | dec05eba | |
2020-07-25 | Initial commit, Function declaration work somewhat | dec05eba | |