Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
brainf**k_nonlocal solution in Uncategorized category for I Love Python! by ciel
def BF(s):
buffer=[0]*9999
ptr=0
def execute(s):
nonlocal buffer,ptr
ret=''
i=0
while i': ptr+=1
elif s[i]=='<': ptr-=1
elif s[i]=='+': buffer[ptr]+=1
elif s[i]=='-': buffer[ptr]-=1
elif s[i]=='.': ret+=chr(buffer[ptr])
elif s[i]==',': pass #getchar
elif s[i]=='[':
if buffer[ptr]: ret+=execute(s[i+1:])
marker=1
while marker:
if s[i+1]=='[': marker+=1
if s[i+1]==']': marker-=1
i+=1
elif s[i]==']':
if buffer[ptr]: i=-1
else: return ret
i+=1
return ret
return execute(s)
i_love_python=lambda:BF('++++++++[>>+>++>+++>++++>+++++>++++++>+++++++>++++++++>+++++++++>++++++++++>+++++++++++>++++++++++++>+++++++++++++>++++++++++++++>+++++++++++++++>++++++++++++++++>+++++++++++++++++>++++++++++++++++++>+++++++++++++++++++>++++++++++++++++++++>+++++++++++++++++++++>++++++++++++++++++++++>+++++++++++++++++++++++>++++++++++++++++++++++++>+++++++++++++++++++++++++>++++++++++++++++++++++++++>+++++++++++++++++++++++++++>++++++++++++++++++++++++++++>+++++++++++++++++++++++++++++>++++++++++++++++++++++++++++++>+++++++++++++++++++++++++++++++<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<-]>>>>>>>>>>+.<<<<<.>>>>>>>>>++++.+++.>++++++.<<+++++.<<<<<<<<.>>>>>>.>>>>>+.<--.<-------.+++++++.-.<<<<<<<<<+.')
if __name__=='__main__': assert i_love_python()=='I love Python!'
Sept. 2, 2014
Comments: