nek-lang/src/main.rs
Kai-Philipp Nosper 23d336d63e Implement variables
- Assignment
- Declaration
- Identifier lexing
2022-01-29 22:49:15 +01:00

32 lines
569 B
Rust

use std::io::Write;
use nek_lang::{lexer::lex, parser::parse, interpreter::Interpreter};
fn main() {
let mut interpreter = Interpreter::new();
let mut code = String::new();
loop {
print!(">> ");
std::io::stdout().flush().unwrap();
code.clear();
std::io::stdin().read_line(&mut code).unwrap();
let code = code.trim();
let tokens = lex(&code);
println!("Tokens: {:?}\n", tokens);
let ast = parse(tokens);
println!("Ast: {:#?}\n", ast);
interpreter.run(ast);
}
}