fork download
  1. main = print test
  2.  
  3. k c b(('[':m:_):i)|m<'C'=k c[q|b>"",q<-init b]i|m<'D'=k b b i|m<'P'=k c""i|1<3=k c(b++c)i
  4. k c b(s:i)=k c(b++s)i
  5. k c b[]=b
  6. f=k""""
  7.  
  8. test=and[
  9. f["H", "e", "l", "l", "o"]=="Hello",
  10. f["H", "e", "l", "l", "o", " ", "[C]", "[P]"]=="Hello Hello ",
  11. f["[D]", "D", "[B]"]=="",
  12. f[""]=="",
  13. f["e", "[C]", "[B]", "I", " ", "l", "i", "k", "[P]", " ", "b", "[P]", "[P]", "s", "!"]=="I like bees!",
  14. f["N", "[P]"]=="N",
  15. f["#", "5", "0", "K", "0", "0", "1", "[D]", "#", "n", "o", "t"]=="#not",
  16. f["s", "u", "d", "[B]", "p", "[C]", "[D]", "I", " " , "h", "a", "v", "e", " ", "[P]", "p", "e", "r", "!"]=="I have supper!"]
Success #stdin #stdout 0s 4700KB
stdin
Standard input is empty
stdout
True