static void Main(string[] args) { try { var env = StandardEnvironment.Create(); env.Define("args", DatumHelpers.atomList(args)); var statistics = new Statistics(); env = statistics.AddTo(env); ResourceLoader.ExecuteResource(statistics, Assembly.GetExecutingAssembly(), env, "Lisp.REPL.lisp"); } catch (Exception ex) { Console.Error.WriteLine("ERROR:\n{0}\n{1}\n", ex, ex.StackTrace); } }
static void Main(string[] args) { var running = true; while (running) { var env = StandardEnvironment.CreateSandbox(); env.Define("args", DatumHelpers.atomList(args)); var statistics = new Statistics(); env = statistics.AddTo(env); var assembly = typeof(Program).GetTypeInfo().Assembly; var docEnvironment = new StandardDefinition(); var maker = new Maker() { Environment = docEnvironment }; try { var evaluator = new Evaluator(); var input = Console.ReadLine(); Datum result = default(Datum); foreach (var d in ReadDatums(input)) { result = evaluator.Evaluate(statistics, env, d); } Console.Write(result); } catch (Exception ex) { Console.Error.WriteLine("ERROR:\n{0}\n{1}\n", ex, ex.StackTrace); } } }