Even in Haskell, the syntax is pretty bad, but is saved by two things. First, Haskell's notation for constructing and composing functions is more terse than Perl's. And second, Haskell has special syntactic sugar (the "do" notation) for expressing monadic computations.
Anyway, I think it would be worth doing, if it could be expressed readably, but I was not able to figure out a way to do that.
This is the best explanation of monads that I have ever read. I hope you enjoy it.