Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
Ludovic 'Archivist' Lagouardette 26724a3812 Added type checked support for GOTO and LABEL in prevision of adding conditionals jumps and loops 10 месяцев назад
.idea Work on interpreter 1 год назад
include Added type checked support for GOTO and LABEL in prevision of adding conditionals jumps and loops 10 месяцев назад
prototypes/molasses First unit test added 1 год назад
src Added type checked support for GOTO and LABEL in prevision of adding conditionals jumps and loops 10 месяцев назад
tests Added type checked support for GOTO and LABEL in prevision of adding conditionals jumps and loops 10 месяцев назад
.clang-format Compiles and build completely 1 год назад
.clang-tidy Added several features 1 год назад
.gitignore Added tests for error messages on all build system known failure 1 год назад
CMakeLists.txt Added type checked support for GOTO and LABEL in prevision of adding conditionals jumps and loops 10 месяцев назад
README.md Made help into a proper readme too 1 год назад

README.md

Sugar

Commands

lex : string ➔ lexed_output

takes a filename to a file that must be compiled

merge : lexed_output lexed_output ➔ lexed_output

merges two lexed modules together

parse : lexed_output ➔ parsed_output

prepares code for generation

generate : parsed_output string ➔ string

takes a root filename, it will be appended with ".s" and that will be the generated assembly file, the filename will not be consumed

assemble : string ➔ _

takes a root filename, it will be appended with ".s" and that file will be compiled, the compiled output will be the given filename

help : _ ➔ _

prints this help

Examples

  • compile the file "example.mol" into the "potato.s" assembly file

$ sugar example.mol lex parse potato generate

  • compile the file "example.mol" into the "potato" executable

$ sugar example.mol lex parse potato generate assemble

  • compile the file "example.mol" and "2.mol" into the "potato" executable

$ sugar example.mol lex 2.mol lex merge parse potato generate assemble