public static void Main(string[] args) { Console.WriteLine("Phantasmagorical computaitonal contraption. Enter an expression:"); while(true) { try { var text = Console.ReadLine(); var lexer = new Lexer(text); var interpreter = new Parser(lexer); var result = interpreter.Expr(); Console.WriteLine($"Result: {result.ToString()}"); } catch(Exception ex) { Console.WriteLine(ex.ToString()); } } }
public static void Main(string[] args) { while(true) { try { Console.Write("prompt>"); var input = Console.ReadLine(); Console.WriteLine("echo " + input); Console.ReadLine(); Console.WriteLine("calculator. Enter calculations:"); var text = Console.ReadLine(); Console.WriteLine($"Parsing {text}"); var lexer = new Lexer(text); var interpreter = new Interpreter(lexer); var result = interpreter.Expr(); Console.WriteLine($"Result: {result.ToString()}"); } catch(Exception ex) { Console.WriteLine(ex.ToString()); } } }
public Interpreter(Lexer lexer) { Lexer = lexer; CurrentToken = Lexer.GetNextToken(); }
public Parser(Lexer lexer) { _lexer = lexer; _currentToken = _lexer.GetNextToken(); }