Subleq: Difference between revisions

Improved formatting. Added output.
(Improved formatting. Added output.)
Line 2,111:
=={{header|Nim}}==
<lang nim>import streams
 
type
Interpreter = object
mem: seq[int]
ip: int
input, output: Stream
 
proc load(prog: seqopenArray[int],; inp, outp: Stream): Interpreter = Interpreter(
Interpreter(mem: prog, input: inp, output: outp)
 
proc run(i: var Interpreter) =
Line 2,134 ⟶ 2,136:
i.ip = C
 
let test = @[15, 17, -1, 17, -1, -1, 16, 1, -1, 16, 3, -1, 15, 15, 0, 0, -1, 72,
72, 101, 108, 108, 111, 44, 32, 119, 111, 114, 108, 100, 33, 10, 0]
var intr = load(test, newFileStream(stdin), newFileStream(stdout))
 
try:
intr.run()
except IndexDefect:
echo "ip: ", intr.ip
echo "mem: ", intr.mem</lang>
 
</lang>
{{out}}
<pre>Hello, world!</pre>
 
=={{header|Objeck}}==
Anonymous user