git @ Cat's Eye Technologies Yolk / e16ae38
Add alternative way of providing input to the interpreter. Chris Pressey 2 years ago
1 changed file(s) with 14 addition(s) and 6 deletion(s). Raw diff Collapse all Expand all
120120 def main():
121121 import sys
122122 with open(sys.argv[1], 'r') as f:
123 prog = f.read()
124 if len(sys.argv) >= 4 and sys.argv[2] == '-i':
125 with open(sys.argv[3], 'r') as f:
126 inp = f.read()
127 else:
123128 inp = sys.stdin.read()
124 if not inp:
125 inp = 'ifeq'
126 result = run(f.read(), inp)
127 print(result)
129 if not inp:
130 inp = 'ifeq'
131 result = run(prog, inp)
132 print(result)
128133
129134
130135 def target(*args):
152157 return accum
153158
154159 def rpython_main(argv):
155 inp = rpython_input()
160 program = rpython_load(argv[1])
161 if len(argv) >= 4 and argv[2] == '-i':
162 inp = rpython_load(argv[3])
163 else:
164 inp = rpython_input()
156165 if not inp:
157166 inp = 'ifeq'
158 program = rpython_load(argv[1])
159167 result = run(program, inp)
160168 print(result.__str__())
161169 return 0