Problèmes pour parser en Brainfuck
Bonjour, je viens ici pour vous reporter un problème que je cherche a résoudre depuis 3 jours, en fait je n'arrive pas à parser l'instruction Loop en brainfuck plus particulierement lorsqu'il y a des Loops imbriqués.
Par exemple pour un code brainfuck: je cherche à avoir à ça Le code dans l'ensemble serait pesant a lire car un peu long (mais pas trop) donc je prefere le séparer sous plusieurs liens hastebin. ;)
Parser: https://hastebin.com/ewafisoben.py
Evaluation:
https://hastebin.com/cuqezevaro.rb
Bf.py (Le fichier que j'execute avec python)
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
import parser
import evalbf
def execute(code, input_):
instrs = parser.parse(code,[])
state = evalbf.BF(input_)
for instr in instrs:
instr.eval(state)
return "".join(state.output)
print(execute("[[+]]","")) |
(PS: Je sais qu'un parser n'est pas indispensable pour brainfuck, mais je l'ai fait pour me simplifier l'évaluation)