mod tokenizer; use tokenizer::*; mod parser; use parser::*; mod executor; use executor::*; fn main() -> Result<(), Box> { let source = std::fs::read_to_string("src/test.lisp").unwrap(); let mut tokenizer = Tokenizer::new(source); let tokens = tokenizer.tokenize()?; let mut parser = Parser::new(tokens); let instructions = parser.parse(); let mut state = LispState::new(); state.execute(instructions)?; Ok(()) }