
On Sun, Jun 22, 2014 at 08:24:35PM -0700, Erik Rantapaa wrote:
I just happen to notice that this query comes back empty in Hayoo:
(a -> m b) -> (b -> m c) -> (a -> m c)
Hoogle is able to find (>=>), and I'm wondering if its a bug or...?
Hayoo does text-based search only; it does not do true type searches. If you remove the parentheses from the final arrow, i.e. (a -> m b) -> (b -> m c) -> a -> m c then you will see that it does find (>=>). The reason is that it does not really know about types, it is just doing a textual matching so it does not know that the parentheses are unimportant. (Actually, it seems Hayoo may have a bit of smarts beyond just plain text matching when it comes to types; for example, searching for [b] -> b instead of [a] -> a will still find 'head'. I am not really familiar with the details.) Hoogle, on the other hand, truly understands the syntax and semantics of types, so it is able to do things like find related, simplified, or reordered versions of the search type, deal with alpha-equivalence, etc. -Brent