[Haskell-cafe] Types and hashes of hashes, trouble for a Java-programmer...

John Smith smithsnorth at gmail.com
Mon Apr 13 12:59:22 EDT 2009


Yes, agreed. Got any clue on the original problem (except to use Data.Map)?

On Mon, Apr 13, 2009 at 6:55 PM, Jason Dagit <dagit at codersbase.com> wrote:

> Others have provided help to answer your question but I'd like to
> provide a little bit different feedback.
>
> On Mon, Apr 13, 2009 at 8:42 AM, John Smith <smithsnorth at gmail.com> wrote:
> > Hi, a java-programmer running into trouble while trying to learn Haskell.
> >
> > I try to make a hash containing hashes but can not getting a value out of
> > the innermost hash - I keep running into type-trouble where IO and Maybe
> > monad is getting mixed?
> >
> > My attempt:
> >
> > removeMaybeHash x =
> >   case x of
> >   Just ref -> ref
> >   Nothing -> HashTable.new (==) (\key -> key)
>
> When you see yourself writing a function like this, you could write it
> like this instead:
> removeMaybeHash (Just ref) = ref
> removeMaybeHash Nothing = HashTable.new (==) (\key -> key)
>
> Hopefully you agree this 2 line version is more clear.  You could go
> further of course and use the function 'maybe' from the prelude, and
> pass the function 'id' instead of \key -> key, but I don't want to
> overwhelm you.
>
> Good luck,
> Jason
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.haskell.org/pipermail/haskell-cafe/attachments/20090413/eb99ea8d/attachment.htm


More information about the Haskell-Cafe mailing list