ox

The Ox programming language, compiler and tools (WIP)
Log | Files | Refs | README | LICENSE

ModeNameSize
-rw-r--r--.clang-format28L
-rw-r--r--.clangd19L
-rw-r--r--.gitignore10L
-rw-r--r--.zed/debug.json18L
-rw-r--r--LICENSE190L
-rw-r--r--NOTES.md115L
-rw-r--r--README20L
-rw-r--r--TODO41L
-rw-r--r--makefile61L
-rw-r--r--ox-syntax/LICENSE21L
-rw-r--r--ox-syntax/language-configuration.json23L
-rw-r--r--ox-syntax/ox-syntax-0.0.3.vsix4503B
-rw-r--r--ox-syntax/package.json26L
-rwxr-xr-xox-syntax/rebuild-syntax-vscode.sh3L
-rw-r--r--ox-syntax/syntaxes/ox.sublime-syntax106L
-rw-r--r--ox-syntax/syntaxes/ox.tmLanguage.json167L
-rw-r--r--oxdesign.ox248L
-rw-r--r--src/file.h59L
-rw-r--r--src/gen.h29L
-rw-r--r--src/gen/gen.c1203L
-rw-r--r--src/hmap.c179L
-rw-r--r--src/hmap.h23L
-rw-r--r--src/hmap_test.c179L
-rw-r--r--src/hmap_test.h3L
-rw-r--r--src/lexer.c396L
-rw-r--r--src/lexer.h7L
-rw-r--r--src/main.c101L
-rw-r--r--src/parser.h65L
-rw-r--r--src/parser/ast.c120L
-rw-r--r--src/parser/decl.c69L
-rw-r--r--src/parser/expr.c239L
-rw-r--r--src/parser/parser.c391L
-rw-r--r--src/parser/parser_utils.c333L
-rw-r--r--src/parser/stmt.c185L
-rw-r--r--src/sem.c202L
-rw-r--r--src/sem.h22L
-rw-r--r--src/types.h303L
-rw-r--r--src/utils.c52L
-rw-r--r--src/utils.h9L
-rw-r--r--stuff/micro/syntax/ox.yaml59L
-rw-r--r--stuff/ox.txt35L
-rw-r--r--test.ox97L
-rw-r--r--tests/ex-assignment-1.ox4L
-rw-r--r--tests/ex-binop-simple1.ox7L
-rw-r--r--tests/ex-blocks-inner.ox10L
-rw-r--r--tests/ex-call-args-same-names.ox14L
-rw-r--r--tests/ex-call-args.ox21L
-rw-r--r--tests/ex-call-many-args.ox11L
-rw-r--r--tests/ex-call-simple.ox8L
-rw-r--r--tests/ex-closure-args.ox9L
-rw-r--r--tests/ex-closure.ox8L
-rw-r--r--tests/ex-cond-adv1.ox17L
-rw-r--r--tests/ex-cond-simple1.ox8L
-rw-r--r--tests/ex-cond-simple2.ox10L
-rw-r--r--tests/ex-decl-no-init.ox3L
-rw-r--r--tests/ex-decl-no-init2.ox6L
-rw-r--r--tests/ex-div.ox4L
-rw-r--r--tests/ex-for-advanced1.ox13L
-rw-r--r--tests/ex-for-advanced2.ox13L
-rw-r--r--tests/ex-for-no-parens.ox5L
-rw-r--r--tests/ex-for-simple1.ox6L
-rw-r--r--tests/ex-for-simple2.ox6L
-rw-r--r--tests/ex-for-simple3.ox15L
-rw-r--r--tests/ex-if-no-parens-2.ox10L
-rw-r--r--tests/ex-if-no-parens.ox10L
-rw-r--r--tests/ex-mul.ox4L
-rw-r--r--tests/ex-print-minus-values.ox3L
-rw-r--r--tests/ex-return-early.ox9L
-rw-r--r--tests/ex-return-empty.ox18L
-rw-r--r--tests/ex-return-func-call.ox11L
-rw-r--r--tests/ex-return-given-expr.ox9L
-rw-r--r--tests/ex-return-given-int.ox8L
-rw-r--r--tests/ex-return-int.ox9L
-rw-r--r--tests/ex-subscript-simple.ox6L
-rw-r--r--tests/ex1.ox6L
-rw-r--r--tests/ex10.ox6L
-rw-r--r--tests/ex11.ox7L
-rw-r--r--tests/ex12.ox7L
-rw-r--r--tests/ex2.ox9L
-rw-r--r--tests/ex6.ox8L
-rw-r--r--tests/ex8.ox16L