Execute Brain****: Difference between revisions

Added 11l
(Added 11l)
Line 28:
Any cell size is allowed, &nbsp; EOF &nbsp; (<u>E</u>nd-<u>O</u>-<u>F</u>ile) &nbsp; support is optional, as is whether you have bounded or unbounded memory.
<br><br>
 
=={{header|11l}}==
<lang 11l>F bf(source)
A tape = DefaultDict[Int, Int]()
A cell = 0
A ptr = 0
L ptr < source.len
S source[ptr]
‘>’
cell++
‘<’
cell--
‘+’
tape[cell]++
‘-’
tape[cell]--
‘.’
:stdout.write(Char(code' tape[cell]))
‘,’
tape[cell] = :stdin.read(1).code
‘[’
I tape[cell] == 0
A nesting_level = 0
L
S source[ptr]
‘[’
nesting_level++
‘]’
I --nesting_level == 0
L.break
ptr++
‘]’
I tape[cell] != 0
A nesting_level = 0
L
S source[ptr]
‘[’
I --nesting_level == 0
L.break
‘]’
nesting_level++
ptr--
ptr++
 
bf(‘++++++++[>++++[>++>+++>+++>+<<<<-]>+>+>->>+[<]<-]>>.>---.+++++++..+++.>>.<-.<.+++.------.--------.>>+.>++.’)</lang>
 
=={{header|68000 Assembly}}==
1,481

edits