Advertisement
Guest User

Untitled

a guest
Dec 13th, 2019
128
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.36 KB | None | 0 0
  1. import Data.Char
  2. import System.Environment
  3. main=getArgs>>=(mapM$putStr.g(z,z)[])
  4. z=0:z
  5. n#(']':s)|n==0=s|m<-n-1=m#s
  6. n#(a:s)|a>'Z'=(n+1)#s|1>0=n#s
  7. g(n:l,r)c('<':s)=g(l,n:r)c s
  8. g(l,n:r)c('>':s)=g(n:l,r)c s
  9. g a@(n:l,r)c('.':s)=chr n:g a c s
  10. g a c x@('[':s)|(0:_,_)<-a=g a c(0#s)|1>0=g a(x:c)s
  11. g a(x:c)(']':_)=g a c x
  12. g(n:l,r)c(i:s)=g(n+44-ord i:l,r)c s
  13. g _ _[]=[]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement