├── .gitignore ├── .travis.yml ├── LICENSE.md ├── Makefile ├── Prelude-dir ├── Prelude.roo ├── README.md └── stuff.s ├── README.md ├── cloc.cfg ├── docs ├── RooModuleFormat.md ├── Spec.md └── TheCompleteAST.md ├── roo.vim ├── src ├── air.cpp ├── air.hpp ├── ast.cpp ├── ast.hpp ├── codegen.cpp ├── codegen.hpp ├── common.cpp ├── common.hpp ├── elf │ ├── elf.cpp │ └── elf.hpp ├── error.cpp ├── error.hpp ├── ir.cpp ├── ir.hpp ├── main.cpp ├── module.cpp ├── module.hpp ├── parser.hpp ├── parsing.cpp ├── parsing.hpp ├── passes │ ├── conditionFolder.cpp │ ├── dotEmitter.cpp │ ├── passes.hpp │ ├── scopeResolver.cpp │ ├── typeChecker.cpp │ └── variableResolver.cpp ├── target.cpp ├── target.hpp ├── token.cpp ├── token.hpp └── x64 │ ├── codeGenerator.cpp │ ├── codeGenerator.hpp │ ├── emitter.cpp │ ├── emitter.hpp │ ├── precolorer.cpp │ ├── precolorer.hpp │ ├── x64.cpp │ └── x64.hpp ├── test.roo └── tests ├── array.roo └── printInt.roo /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/.gitignore -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/.travis.yml -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/LICENSE.md -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/Makefile -------------------------------------------------------------------------------- /Prelude-dir/Prelude.roo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/Prelude-dir/Prelude.roo -------------------------------------------------------------------------------- /Prelude-dir/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/Prelude-dir/README.md -------------------------------------------------------------------------------- /Prelude-dir/stuff.s: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/Prelude-dir/stuff.s -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/README.md -------------------------------------------------------------------------------- /cloc.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/cloc.cfg -------------------------------------------------------------------------------- /docs/RooModuleFormat.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/docs/RooModuleFormat.md -------------------------------------------------------------------------------- /docs/Spec.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/docs/Spec.md -------------------------------------------------------------------------------- /docs/TheCompleteAST.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/docs/TheCompleteAST.md -------------------------------------------------------------------------------- /roo.vim: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/roo.vim -------------------------------------------------------------------------------- /src/air.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/src/air.cpp -------------------------------------------------------------------------------- /src/air.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/src/air.hpp -------------------------------------------------------------------------------- /src/ast.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/src/ast.cpp -------------------------------------------------------------------------------- /src/ast.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/src/ast.hpp -------------------------------------------------------------------------------- /src/codegen.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/src/codegen.cpp -------------------------------------------------------------------------------- /src/codegen.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/src/codegen.hpp -------------------------------------------------------------------------------- /src/common.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/src/common.cpp -------------------------------------------------------------------------------- /src/common.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/src/common.hpp -------------------------------------------------------------------------------- /src/elf/elf.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/src/elf/elf.cpp -------------------------------------------------------------------------------- /src/elf/elf.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/src/elf/elf.hpp -------------------------------------------------------------------------------- /src/error.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/src/error.cpp -------------------------------------------------------------------------------- /src/error.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/src/error.hpp -------------------------------------------------------------------------------- /src/ir.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/src/ir.cpp -------------------------------------------------------------------------------- /src/ir.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/src/ir.hpp -------------------------------------------------------------------------------- /src/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/src/main.cpp -------------------------------------------------------------------------------- /src/module.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/src/module.cpp -------------------------------------------------------------------------------- /src/module.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/src/module.hpp -------------------------------------------------------------------------------- /src/parser.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/src/parser.hpp -------------------------------------------------------------------------------- /src/parsing.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/src/parsing.cpp -------------------------------------------------------------------------------- /src/parsing.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/src/parsing.hpp -------------------------------------------------------------------------------- /src/passes/conditionFolder.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/src/passes/conditionFolder.cpp -------------------------------------------------------------------------------- /src/passes/dotEmitter.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/src/passes/dotEmitter.cpp -------------------------------------------------------------------------------- /src/passes/passes.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/src/passes/passes.hpp -------------------------------------------------------------------------------- /src/passes/scopeResolver.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/src/passes/scopeResolver.cpp -------------------------------------------------------------------------------- /src/passes/typeChecker.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/src/passes/typeChecker.cpp -------------------------------------------------------------------------------- /src/passes/variableResolver.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/src/passes/variableResolver.cpp -------------------------------------------------------------------------------- /src/target.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/src/target.cpp -------------------------------------------------------------------------------- /src/target.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/src/target.hpp -------------------------------------------------------------------------------- /src/token.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/src/token.cpp -------------------------------------------------------------------------------- /src/token.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/src/token.hpp -------------------------------------------------------------------------------- /src/x64/codeGenerator.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/src/x64/codeGenerator.cpp -------------------------------------------------------------------------------- /src/x64/codeGenerator.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/src/x64/codeGenerator.hpp -------------------------------------------------------------------------------- /src/x64/emitter.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/src/x64/emitter.cpp -------------------------------------------------------------------------------- /src/x64/emitter.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/src/x64/emitter.hpp -------------------------------------------------------------------------------- /src/x64/precolorer.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/src/x64/precolorer.cpp -------------------------------------------------------------------------------- /src/x64/precolorer.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/src/x64/precolorer.hpp -------------------------------------------------------------------------------- /src/x64/x64.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/src/x64/x64.cpp -------------------------------------------------------------------------------- /src/x64/x64.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/src/x64/x64.hpp -------------------------------------------------------------------------------- /test.roo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/test.roo -------------------------------------------------------------------------------- /tests/array.roo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/tests/array.roo -------------------------------------------------------------------------------- /tests/printInt.roo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacWoods/Roo/HEAD/tests/printInt.roo --------------------------------------------------------------------------------