diff options
| author | Edvard Thörnros <edvard.thornros@gmail.com> | 2021-01-09 17:30:09 +0100 |
|---|---|---|
| committer | Edvard Thörnros <edvard.thornros@gmail.com> | 2021-01-09 17:30:09 +0100 |
| commit | efaab433309170e8330a7722e90c26a93dbec252 (patch) | |
| tree | 86794243d8351f5761cfac6ddb9cce67a2ee6359 /src/main.rs | |
| parent | 158c2c284fa61be972dd868e2f262f9e04a0edb4 (diff) | |
| download | sylt-efaab433309170e8330a7722e90c26a93dbec252.tar.gz | |
Start on compiler
Diffstat (limited to 'src/main.rs')
| -rw-r--r-- | src/main.rs | 18 |
1 files changed, 3 insertions, 15 deletions
diff --git a/src/main.rs b/src/main.rs index 72fb8a1..c9a7602 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,23 +1,11 @@ mod tokenizer; mod vm; +mod compiler; fn main() { - /* let tokens = tokenizer::file_to_tokens("tests/simple.tdy"); - for token in tokens.iter() { - println!("| {:?}", token); - } - */ + let block = compiler::compile("main", tokens); - let mut blocks = vm::Block::new("main"); - blocks.add(vm::Op::Constant(vm::Value::Bool(true))); - blocks.add(vm::Op::Print); - blocks.add(vm::Op::Constant(vm::Value::Int(123))); - blocks.add(vm::Op::Constant(vm::Value::Int(123))); - blocks.add(vm::Op::Add); - blocks.add(vm::Op::Print); - blocks.add(vm::Op::Return); - - vm::run_block(blocks); + vm::run_block(block); } |
