pierre: using do notation (instead of >>=) to chain monadic values
Pattern matching in do notation