public InteractiveCompiler(string filename) { PrologCodeProvider provider = new PrologCodeProvider(); IPrologCompiler compiler = provider.CreateCompiler(); PrologCompilerParameters parameters = new PrologCompilerParameters(); PrologCompilerResults results = compiler.CompileAbstractCodeFromFile(parameters, "boot.pro"); /* Run */ AbstractMachineState runtime = new AbstractMachineState(new AMFactory()); //runtime.Init(results.AbstractInstructions, results.ForeignMethods, results.Namespaces, results.AssemblyFiles); runtime.Initialize(results.AbstractInstructions); runtime.Transition(); }
public void Transition() { ArrayList prog = new ArrayList(); prog.Add(new NopInstruction()); prog.Add(new HaltInstruction()); AbstractMachineState state = new AbstractMachineState(new AMFactory()); state.Initialize(prog); state.Transition(); Assert.IsTrue(state.Stop()); }