I'm no Haskell expert, but >> is an operator that is used for working with monads, which are an unusual feature that (among many other things) enable imperative-style programming in Haskell. There are many tutorials available on monads; here's one good one.

Essentially, a >> b can be read like "do a then do b, and return the result of b". It's similar to the more common bind operator >>=.

Answering with "which are difficult-to-understand things" doesn't clarify. It sets the reader up for failure, I think.
–
Don StewartFeb 27 '10 at 18:03

Fair enough. They are now "an unusual feature" instead of being "difficult-to-understand things."
–
j_random_hackerFeb 28 '10 at 5:51

It's "an unusual feature" to call a function and pass the result to another function? OK...
–
jrockwayMar 4 '10 at 23:30

1

You're describing either plain composition of functions, which has nothing to do with monads, or a continuation, and yes those are also difficult for those coming from the imperative world to understand. All that aside: what Haskell topic has produced the greatest number of tutorials and newbie guides (often of the form "A Monad Is Like an X")? Why is that?
–
j_random_hackerMar 5 '10 at 1:30