[Haskell-cafe] beginners question about fromMaybe
toby.hutton at gmail.com
Tue Jun 2 19:32:14 EDT 2009
On Wed, Jun 3, 2009 at 8:59 AM, Nico Rolle <nrolle at web.de> wrote:
> hi there
> heres a code snipped, don't care about the parameters.
> the thing is i make a lookup on my map "m" and then branch on that return value
> probePhase is sc  m = 
> probePhase is sc (x:xs) m
> | val == Nothing = probePhase is sc xs m
> | otherwise = jr ++ probePhase is sc xs m
> jr = joinTuples sc x (fromMaybe  val)
> key = getPartialTuple is x
> val = Map.lookup key m
> the line "jr = joinTuples sc x (fromMaybe  val)" is kind of ugly
> because i know that it is not Nothing.
Although pattern matching is probably nicer, there's also fromJust
which will throw an exception if you pass it Nothing.
case Map.lookup key m of
Nothing -> next
Just val -> (joinTuples sc x val) ++ next
where next = probePhase ...
key = ...
More information about the Haskell-Cafe