├── .github ├── dependabot.yml └── workflows │ └── rust.yml ├── .gitignore ├── .travis.yml ├── Cargo.lock ├── Cargo.toml ├── LICENSE ├── README.md ├── abi.md ├── examples.png ├── examples ├── char.ms ├── function.ms ├── hello.ms ├── helloworld │ └── run │ │ ├── 10 let x = 1 + 2 % 4 - 5 │ │ └── .gitkeep │ │ └── 20 println('Hello, world!') │ │ └── .gitkeep ├── math_test.ms ├── next_character.ms ├── nyan.ms ├── nyan.txt ├── parse_benchmark.ms └── shindoineko.ms ├── function.codegen.c ├── lib ├── ast.rs ├── codegen │ ├── mod.rs │ ├── prelude.c │ ├── symbol.rs │ └── types.rs ├── eval │ ├── builtin.rs │ ├── env.rs │ ├── mod.rs │ ├── object.rs │ └── runtime_error.rs ├── grammar │ ├── Maysick.g4 │ ├── maysick.interp │ ├── maysick.tokens │ ├── maysickLexer.interp │ ├── maysickLexer.tokens │ ├── maysicklexer.rs │ ├── maysicklistener.rs │ ├── maysickparser.rs │ └── mod.rs ├── lib.rs ├── loader.rs ├── parser │ ├── mod.rs │ └── test.rs ├── prelude │ ├── getchar.rs │ ├── graphics.rs │ └── mod.rs └── token.rs ├── lsp-server └── main.rs └── src └── main.rs /.github/dependabot.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/.github/dependabot.yml -------------------------------------------------------------------------------- /.github/workflows/rust.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/.github/workflows/rust.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /maysick 2 | 3 | .idea/ 4 | /target 5 | **/*.rs.bk 6 | 7 | .vscode/ -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/.travis.yml -------------------------------------------------------------------------------- /Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/Cargo.lock -------------------------------------------------------------------------------- /Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/Cargo.toml -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/README.md -------------------------------------------------------------------------------- /abi.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/abi.md -------------------------------------------------------------------------------- /examples.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/examples.png -------------------------------------------------------------------------------- /examples/char.ms: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/examples/char.ms -------------------------------------------------------------------------------- /examples/function.ms: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/examples/function.ms -------------------------------------------------------------------------------- /examples/hello.ms: -------------------------------------------------------------------------------- 1 | let x = 1 + 2 % 4 - 5; 2 | println('Hello, world!'); 3 | -------------------------------------------------------------------------------- /examples/helloworld/run/10 let x = 1 + 2 % 4 - 5/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /examples/helloworld/run/20 println('Hello, world!')/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /examples/math_test.ms: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/examples/math_test.ms -------------------------------------------------------------------------------- /examples/next_character.ms: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/examples/next_character.ms -------------------------------------------------------------------------------- /examples/nyan.ms: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/examples/nyan.ms -------------------------------------------------------------------------------- /examples/nyan.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/examples/nyan.txt -------------------------------------------------------------------------------- /examples/parse_benchmark.ms: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/examples/parse_benchmark.ms -------------------------------------------------------------------------------- /examples/shindoineko.ms: -------------------------------------------------------------------------------- 1 | println('しんどいねこ'); 2 | -------------------------------------------------------------------------------- /function.codegen.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/function.codegen.c -------------------------------------------------------------------------------- /lib/ast.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/lib/ast.rs -------------------------------------------------------------------------------- /lib/codegen/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/lib/codegen/mod.rs -------------------------------------------------------------------------------- /lib/codegen/prelude.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/lib/codegen/prelude.c -------------------------------------------------------------------------------- /lib/codegen/symbol.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/lib/codegen/symbol.rs -------------------------------------------------------------------------------- /lib/codegen/types.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/lib/codegen/types.rs -------------------------------------------------------------------------------- /lib/eval/builtin.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/lib/eval/builtin.rs -------------------------------------------------------------------------------- /lib/eval/env.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/lib/eval/env.rs -------------------------------------------------------------------------------- /lib/eval/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/lib/eval/mod.rs -------------------------------------------------------------------------------- /lib/eval/object.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/lib/eval/object.rs -------------------------------------------------------------------------------- /lib/eval/runtime_error.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/lib/eval/runtime_error.rs -------------------------------------------------------------------------------- /lib/grammar/Maysick.g4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/lib/grammar/Maysick.g4 -------------------------------------------------------------------------------- /lib/grammar/maysick.interp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/lib/grammar/maysick.interp -------------------------------------------------------------------------------- /lib/grammar/maysick.tokens: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/lib/grammar/maysick.tokens -------------------------------------------------------------------------------- /lib/grammar/maysickLexer.interp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/lib/grammar/maysickLexer.interp -------------------------------------------------------------------------------- /lib/grammar/maysickLexer.tokens: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/lib/grammar/maysickLexer.tokens -------------------------------------------------------------------------------- /lib/grammar/maysicklexer.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/lib/grammar/maysicklexer.rs -------------------------------------------------------------------------------- /lib/grammar/maysicklistener.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/lib/grammar/maysicklistener.rs -------------------------------------------------------------------------------- /lib/grammar/maysickparser.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/lib/grammar/maysickparser.rs -------------------------------------------------------------------------------- /lib/grammar/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/lib/grammar/mod.rs -------------------------------------------------------------------------------- /lib/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/lib/lib.rs -------------------------------------------------------------------------------- /lib/loader.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/lib/loader.rs -------------------------------------------------------------------------------- /lib/parser/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/lib/parser/mod.rs -------------------------------------------------------------------------------- /lib/parser/test.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/lib/parser/test.rs -------------------------------------------------------------------------------- /lib/prelude/getchar.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/lib/prelude/getchar.rs -------------------------------------------------------------------------------- /lib/prelude/graphics.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/lib/prelude/graphics.rs -------------------------------------------------------------------------------- /lib/prelude/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/lib/prelude/mod.rs -------------------------------------------------------------------------------- /lib/token.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/lib/token.rs -------------------------------------------------------------------------------- /lsp-server/main.rs: -------------------------------------------------------------------------------- 1 | fn main() { 2 | println!("Hello, world!"); 3 | } 4 | -------------------------------------------------------------------------------- /src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/3c1u/maysick/HEAD/src/main.rs --------------------------------------------------------------------------------