For a while I have been struggling to integrate scala with java methods that might return null. I came up with the following utility which helps a lot:
// produce an Option, nulls become None
object Maybe {
def apply[T](t:T) = if (t==null) None else Some(t)
}
Maybe(javaClass.getResultCouldBeNull()).map( result => doSomeWork(resul...
The lookup function in Data.Map and Data.IntMap currently return values wrapped in Maybe with
the type signature
lookup :: Ord k => k -> Map k a -> Maybe a
It used to have the more general type of
lookup :: (Monad m, Ord k) => k -> Map k a -> m a
I realize the former likely reduces the need of extra type specification, but ...
Hi,
we are trying to build the Haskell-MaybeMonad sample from http://www.haskell.org/all_about_monads/html/maybemonad.html in F#.
The idea is to search for a mailaddress in two dictionaries. If one of the both lookups returns a result we look into the third one.
let bindM x k =
match x with
| Some value -> k value
| None ...
I'm trying to utilize the Maybe type in Haskell. I have a lookup for key, value tuples that returns a Maybe. How do I access the data that was wrapped by Maybe? For example I want to add the integer contained by Maybe with another integer.
...