Also if you don't need foo and bar you can write: callFoo >> callBar >> return baz
//Johan On Aug 4, 2012 8:36 AM, "Matthew" <wonderzom...@gmail.com> wrote: > I'm a somewhat experienced coder but I am relatively new to Haskell. > I've got a question about whether a usage of do notation is idiomatic, > or whether it's better to use pattern matching. > > I've got two functions which take an input and return Maybe SomeType. > If either returns Nothing, I also want to return Nothing. If they both > return something, then I'll return something unrelated. > > With do notation, I can write something like this: > > do > foo <- callFoo x > bar <- callBar x > return (baz) > > Alternatively, there's a straightforward pattern match. After binding > foo, bar in a couple of where clauses: > > case (foo,bar) of (Just x, Just y) -> baz > _ -> Nothing > > So which approach is more idiomatic, do you think? > > Thanks, > - Matthew > > _______________________________________________ > Haskell-Cafe mailing list > Haskell-Cafe@haskell.org > http://www.haskell.org/mailman/listinfo/haskell-cafe >
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe