Hello i made this program which interprets brainf***

 But i don't understand why it doesn't ends....and also it doesn't print 
anything

 import sys

 cell=[0] * 30000
 code_pointer=0
 cell_pointer=0
 close_brace_pos=0
 open_brace_pos=0

 bf=raw_input("Input bf program:")

 while (code_pointer<len(bf)):

 c=bf[code_pointer]

 if c=='.':
 sys.stdout.write(cell[cell_pointer])
 code_pointer+=1

 elif c==',':
 cell[cell_pointer]=sys.stdin.read(1);
 code_pointer+=1

 elif c=='>':
 cell_pointer+=1
 code_pointer+=1

 elif c=='<':
 cell_pointer-=1
 code_pointer+=1

 elif c=='+':
 cell[cell_pointer]+=1
 code_pointer+=1

 elif c=='-':
 cell[cell_pointer]-=1
 code_pointer+=1

 elif c=='[':
 if cell[cell_pointer]>0:
 code_pointer+=1
 else:
 code_pointer=close_brace_pos+1

 elif c==']':
 close_brace_pos=code_pointer
 code_pointer=open_brace_pos

 else:
 code_pointer+=1




 For those of you who don't understand brainfuck its a very simple 8 
instruction language

http://en.wikipedia.org/wiki/Brainfuck
_______________________________________________
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor

Reply via email to