Inheritance: IScheminType
Example #1
0
        public override IScheminType Execute(Environment env, Evaluator eval, ScheminList args)
        {
            ScheminString filename = (ScheminString) args.Car();
            FileStream fs = new FileStream(filename.Value, FileMode.Append, FileAccess.Write, FileShare.Write);
            ScheminPort filePort = new ScheminPort(fs, ScheminPort.PortType.OutputPort);

            return filePort;
        }
Example #2
0
        public override IScheminType Execute(Environment env, Evaluator eval, ScheminPair args)
        {
            ScheminString filename = (ScheminString) args.Car;
            string baseDir = AppDomain.CurrentDomain.BaseDirectory;
            FileStream fs = File.OpenRead(baseDir + Path.DirectorySeparatorChar + filename.Value);
            ScheminPort filePort = new ScheminPort(fs, ScheminPort.PortType.InputPort);

            return filePort;
        }
Example #3
0
        public override IScheminType Execute(Environment env, Evaluator eval, ScheminPair args)
        {
            ScheminString filename = (ScheminString) args.Car;
            string baseDir = AppDomain.CurrentDomain.BaseDirectory;
            FileStream fs = new FileStream(baseDir + Path.DirectorySeparatorChar + filename.Value, FileMode.Append, FileAccess.Write, FileShare.Write);
            ScheminPort filePort = new ScheminPort(fs, ScheminPort.PortType.OutputPort);

            return filePort;
        }
Example #4
0
        public Evaluator()
        {
            Stack = new Stack<StackFrame>();
            this.GlobalEnv = new Environment();

            var ConsoleInput = new ScheminPort(Console.In);
            var ConsoleOutput = new ScheminPort(Console.Out);

            CurrentInputPort = ConsoleInput;
            CurrentOutputPort = ConsoleOutput;
            DefinePrimitives(this.GlobalEnv);
        }
Example #5
0
        public Evaluator(Interpreter interpreter)
        {
            this.interpreter = interpreter;
            this.GlobalEnv = interpreter.GlobalEnv;

            Stack = new Stack<StackFrame>();

            var ConsoleInput = new ScheminPort(Console.In);
            var ConsoleOutput = new ScheminPort(Console.Out);

            this.CurrentInputPort = ConsoleInput;
            this.CurrentOutputPort = ConsoleOutput;
        }