[ANN] Hayoo Relaunch

Hi Cafe, Hayoo http://hayoo.fh-wedel.de has been relaunched. Hayoo is a search engine for Hackage packages, which allows you to search for functions, data types and packages. It is currently work in progress. Any feedback is greatly appreciated! Hayoo uses Hunt https://github.com/hunt-framework for indexing and searching, which is the successor of Holumbus. Hunt is a flexible, lightweight search platform with a powerful query language and JSON API. Example search requests are: * Function names: map http://hayoo.fh-wedel.de/?query=map * Function signatures: (a->b)->f a->f b http://hayoo.fh-wedel.de/?query=%28a-%3Eb%29-%3Ef+a-%3Ef+b * Module names: Control.Loop http://hayoo.fh-wedel.de/?query=Control.Loop Have a look at the examples on http://hayoo.fh-wedel.de/examples for some advances queries. The old Hayoo and Holumbus are still online at http://holumbus-alt.fh-wedel.de/ -- Sebastian Philipp

Sebastian,
This looks great! I love the results for the example queries.
However, I have a few questions, which I think many people may share.
Namely, how is this different from Hoogle? For many of us, Hoogle is the
default tool, and has been thoroughly integrated into our workflow. What
differentiates Hayoo from Hoogle? Does it offer exactly the same service
but with a few different minor choices? (From a very brief glance, I prefer
the output I get from Hayoo, but without having used it extensively, I
don't know how it really compares.) I think that whatever answer you have
to this, it may be good to put on the "About" section of the Hayoo website.
(If the answer is is "it's the same but better in minor ways", that's also
perfectly alright. Incremental improvement is important. Not everything has
to be groundbreakingly different with strong differentiating points.)
Anyway, don't take any of these questions as criticism -- I'm a huge fan of
what I see here and will try to use Hayoo instead of Hoogle to see how it
compares in practice.
Best,
Andrew
On Sun, Aug 3, 2014 at 6:13 AM, Sebastian Philipp
Hi Cafe,
Hayoo http://hayoo.fh-wedel.de has been relaunched. Hayoo is a search engine for Hackage packages, which allows you to search for functions, data types and packages.
It is currently work in progress. Any feedback is greatly appreciated!
Hayoo uses Hunt https://github.com/hunt-framework for indexing and searching, which is the successor of Holumbus. Hunt is a flexible, lightweight search platform with a powerful query language and JSON API.
Example search requests are:
* Function names: map http://hayoo.fh-wedel.de/?query=map
* Function signatures: (a->b)->f a->f b http://hayoo.fh-wedel.de/?query=%28a-%3Eb%29-%3Ef+a-%3Ef+b
* Module names: Control.Loop http://hayoo.fh-wedel.de/?query=Control.Loop
Have a look at the examples on http://hayoo.fh-wedel.de/examples for some advances queries.
The old Hayoo and Holumbus are still online at http://holumbus-alt.fh-wedel.de/
-- Sebastian Philipp
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe

Hi Andrew, the project goal is the same as Hoogle: to provide a search machine for Hackage documentations. The main reasons for using Hayoo are: * To provide a completion for search queries * Get a direct link to the sources on Hackage * Advanced queries, like searching for packages by Author: http://hayoo.fh-wedel.de/?query=Andrew+Gibiansky or searching for package modules: http://hayoo.fh-wedel.de/?query=package%3A%21%27ghc-parser%27%20type%3A%21mo... * and Hayoo searches the whole Hackage. Although, Hoogle has a better signature search. Sebastian Am 03.08.2014 um 18:33 schrieb Andrew Gibiansky:
Sebastian,
This looks great! I love the results for the example queries.
However, I have a few questions, which I think many people may share. Namely, how is this different from Hoogle? For many of us, Hoogle is the default tool, and has been thoroughly integrated into our workflow. What differentiates Hayoo from Hoogle? Does it offer exactly the same service but with a few different minor choices? (From a very brief glance, I prefer the output I get from Hayoo, but without having used it extensively, I don't know how it really compares.) I think that whatever answer you have to this, it may be good to put on the "About" section of the Hayoo website.
(If the answer is is "it's the same but better in minor ways", that's also perfectly alright. Incremental improvement is important. Not everything has to be groundbreakingly different with strong differentiating points.)
Anyway, don't take any of these questions as criticism -- I'm a huge fan of what I see here and will try to use Hayoo instead of Hoogle to see how it compares in practice.
Best,
Andrew
On Sun, Aug 3, 2014 at 6:13 AM, Sebastian Philipp
wrote: Hi Cafe,
Hayoo http://hayoo.fh-wedel.de has been relaunched. Hayoo is a search engine for Hackage packages, which allows you to search for functions, data types and packages.
It is currently work in progress. Any feedback is greatly appreciated!
Hayoo uses Hunt https://github.com/hunt-framework for indexing and searching, which is the successor of Holumbus. Hunt is a flexible, lightweight search platform with a powerful query language and JSON API.
Example search requests are:
* Function names: map http://hayoo.fh-wedel.de/?query=map
* Function signatures: (a->b)->f a->f b http://hayoo.fh-wedel.de/?query=%28a-%3Eb%29-%3Ef+a-%3Ef+b
* Module names: Control.Loop http://hayoo.fh-wedel.de/?query=Control.Loop
Have a look at the examples on http://hayoo.fh-wedel.de/examples for some advances queries.
The old Hayoo and Holumbus are still online at http://holumbus-alt.fh-wedel.de/
-- Sebastian Philipp
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
-- Sebastian Philipp

The fact that it searches all of hackage is the primary distinction, imo.
Tom
El Aug 3, 2014, a las 15:28, Sebastian Philipp
Hi Andrew,
the project goal is the same as Hoogle: to provide a search machine for Hackage documentations. The main reasons for using Hayoo are:
* To provide a completion for search queries * Get a direct link to the sources on Hackage * Advanced queries, like searching for packages by Author: http://hayoo.fh-wedel.de/?query=Andrew+Gibiansky or searching for package modules: http://hayoo.fh-wedel.de/?query=package%3A%21%27ghc-parser%27%20type%3A%21mo... * and Hayoo searches the whole Hackage.
Although, Hoogle has a better signature search.
Sebastian
Am 03.08.2014 um 18:33 schrieb Andrew Gibiansky:
Sebastian,
This looks great! I love the results for the example queries.
However, I have a few questions, which I think many people may share. Namely, how is this different from Hoogle? For many of us, Hoogle is the default tool, and has been thoroughly integrated into our workflow. What differentiates Hayoo from Hoogle? Does it offer exactly the same service but with a few different minor choices? (From a very brief glance, I prefer the output I get from Hayoo, but without having used it extensively, I don't know how it really compares.) I think that whatever answer you have to this, it may be good to put on the "About" section of the Hayoo website.
(If the answer is is "it's the same but better in minor ways", that's also perfectly alright. Incremental improvement is important. Not everything has to be groundbreakingly different with strong differentiating points.)
Anyway, don't take any of these questions as criticism -- I'm a huge fan of what I see here and will try to use Hayoo instead of Hoogle to see how it compares in practice.
Best,
Andrew
On Sun, Aug 3, 2014 at 6:13 AM, Sebastian Philipp
wrote: Hi Cafe,
Hayoo http://hayoo.fh-wedel.de has been relaunched. Hayoo is a search engine for Hackage packages, which allows you to search for functions, data types and packages.
It is currently work in progress. Any feedback is greatly appreciated!
Hayoo uses Hunt https://github.com/hunt-framework for indexing and searching, which is the successor of Holumbus. Hunt is a flexible, lightweight search platform with a powerful query language and JSON API.
Example search requests are:
* Function names: map http://hayoo.fh-wedel.de/?query=map
* Function signatures: (a->b)->f a->f b http://hayoo.fh-wedel.de/?query=%28a-%3Eb%29-%3Ef+a-%3Ef+b
* Module names: Control.Loop http://hayoo.fh-wedel.de/?query=Control.Loop
Have a look at the examples on http://hayoo.fh-wedel.de/examples for some advances queries.
The old Hayoo and Holumbus are still online at http://holumbus-alt.fh-wedel.de/
-- Sebastian Philipp
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
-- Sebastian Philipp
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe

Sebastian Philipp wrote:
Hayoo http://hayoo.fh-wedel.de has been relaunched. Hayoo is a search engine for Hackage packages, which allows you to search for functions, data types and packages.
It is currently work in progress. Any feedback is greatly appreciated!
Thanks for this fabulous search engine that covers all of hackage! But I have feedback. :) Yesterday, I was trying to search for the operator (^?!), but no results. Today, I found that I have to put it in quotes, so the following queries work: "(^?!)", "^?!". I guess that one of the three symbols has some special meaning in the query language, but would it be possible to change the lexical syntax to match Haskell's syntax? I.e. any valid Haskell identifier is also a valid search query. (I'm happy to put parentheses around operators.) The inline Haddock documentation is great, but at the moment, the hyperlinks don't seem to work. The link http://hayoo.fh-wedel.de/?query=%28%28name%3A%21Fold%20package%3A%21lens%20m... gives an error message Internal Error: (line 1, column 57): unexpected "S" expecting digit Best regards, Heinrich Apfelmus -- http://apfelmus.nfshost.com

On Mon, 2014-08-04 at 12:28 +0200, Heinrich Apfelmus wrote:
Sebastian Philipp wrote:
Hayoo http://hayoo.fh-wedel.de has been relaunched. Hayoo is a search engine for Hackage packages, which allows you to search for functions, data types and packages.
It is currently work in progress. Any feedback is greatly appreciated!
Thanks for this fabulous search engine that covers all of hackage! But I have feedback. :)
Yesterday, I was trying to search for the operator (^?!), but no results. Today, I found that I have to put it in quotes, so the following queries work: "(^?!)", "^?!". I guess that one of the three symbols has some special meaning in the query language, but would it be possible to change the lexical syntax to match Haskell's syntax? I.e. any valid Haskell identifier is also a valid search query. (I'm happy to put parentheses around operators.)
I experienced something similar/related by simply querying for "foldl'" (without the quotes):
Internal Error: (line 1, column 6): unexpected '\'' expecting "\\", "^", space, white space, "++", "NEAR", "FOLLOW", "AND", "OR" or end of input
The query succeeds when using "foldl'" with the quotes. I'm not sure whether it's intentional for those queries to fail, but it feels counter-intuitive. Anyway, next to that: thanks for your work on Hayoo! Nicolas

Am 04.08.2014 um 12:28 schrieb Heinrich Apfelmus:
Sebastian Philipp wrote:
Hayoo http://hayoo.fh-wedel.de has been relaunched. Hayoo is a search engine for Hackage packages, which allows you to search for functions, data types and packages.
It is currently work in progress. Any feedback is greatly appreciated!
Yesterday, I was trying to search for the operator (^?!), but no results. Today, I found that I have to put it in quotes, so the following queries work: "(^?!)", "^?!". I guess that one of the three symbols has some special meaning in the query language, but would it be possible to change the lexical syntax to match Haskell's syntax? I.e. any valid Haskell identifier is also a valid search query. (I'm happy to put parentheses around operators.) (^?!) and foldl' are indeed problematic. Thanks for finding the bug. This will take a while, because we have to modify the query language.
The inline Haddock documentation is great, but at the moment, the hyperlinks don't seem to work. The link
http://hayoo.fh-wedel.de/?query=%28%28name%3A%21Fold%20package%3A%21lens%20m...
That's now fixed ans will be online shortly. Regards, Sebastian Philipp

Hi Sebastian,
Someone reported me a bug on twitter, please see:
https://twitter.com/blast_hardchese/status/496313816410357761
Thanks for your work, it's really promising!
Cheers
Alois
On 3 August 2014 14:13, Sebastian Philipp
Hi Cafe,
Hayoo http://hayoo.fh-wedel.de has been relaunched. Hayoo is a search engine for Hackage packages, which allows you to search for functions, data types and packages.
It is currently work in progress. Any feedback is greatly appreciated!
Hayoo uses Hunt https://github.com/hunt-framework for indexing and searching, which is the successor of Holumbus. Hunt is a flexible, lightweight search platform with a powerful query language and JSON API.
Example search requests are:
* Function names: map http://hayoo.fh-wedel.de/?query=map
* Function signatures: (a->b)->f a->f b http://hayoo.fh-wedel.de/?query=%28a-%3Eb%29-%3Ef+a-%3Ef+b
* Module names: Control.Loop http://hayoo.fh-wedel.de/?query=Control.Loop
Have a look at the examples on http://hayoo.fh-wedel.de/examples for some advances queries.
The old Hayoo and Holumbus are still online at http://holumbus-alt.fh-wedel.de/
-- Sebastian Philipp
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
-- *Λ\ois* http://twitter.com/aloiscochard http://github.com/aloiscochard

Hi, This looks very nice, thanks for your work! May I ask if it's possible to run this on my local machine for the times when I don't have internet to use the JSON API? http://hackage.haskell.org/package/Hayoo seems related, but it's last upload date is in 2012. It would be nice if there were an easy way to download the already generated index from the server, so that the users don't have to rebuild it on their own (which may be expensive). Just redownload every once in a while. So if you have any comments on offline usage, I'm eager to hear! Thanks, Gergely

Hi Gergely, Am 05.08.2014 um 11:19 schrieb Gergely Risko:
Hi,
May I ask if it's possible to run this on my local machine for the times when I don't have internet to use the JSON API?
Hayoo requires about 5GB of RAM for indexing complete Hackage at the moment. I don't think is feasible to run a local Hayoo to index Hackage. On the other hand, one might think about a Hayoo which indexes the local Cabal sandbox. Unfortunately, this is not our top priority.
http://hackage.haskell.org/package/Hayoo seems related, but it's last upload date is in 2012.
The new Hayoo is based on the Hunt-Framework, which is not ready to be released at the moment. We're going to make a separate announcement for Hunt then. in the meantime, you can have a look at the GitHub repository [0].
It would be nice if there were an easy way to download the already generated index from the server, so that the users don't have to rebuild it on their own (which may be expensive). Just redownload every once in a while.
I could publish the serialized index of Hayoo, if you want to set up a local Hayoo despite the memory usage. regards, Sebastian
So if you have any comments on offline usage, I'm eager to hear!
Thanks, Gergely
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
[0] https://github.com/hunt-framework -- Sebastian Philipp

Hayoo requires about 5GB of RAM for indexing complete Hackage at the moment. I don't think is feasible to run a local Hayoo to index Hackage. On the other hand, one might think about a Hayoo which indexes the local Cabal sandbox. Unfortunately, this is not our top priority.
On my laptop, I have 16 GB RAM. 5 GB is not nothing, but it really isn't
that much -- if it requires only 5 GB, it's *definitely* feasible to run a
local Hayoo (well, memory-wise at least).
-- Andrew
On Tue, Aug 5, 2014 at 4:43 AM, Sebastian Philipp
Hi Gergely,
Am 05.08.2014 um 11:19 schrieb Gergely Risko:
Hi,
May I ask if it's possible to run this on my local machine for the times when I don't have internet to use the JSON API?
Hayoo requires about 5GB of RAM for indexing complete Hackage at the moment. I don't think is feasible to run a local Hayoo to index Hackage. On the other hand, one might think about a Hayoo which indexes the local Cabal sandbox. Unfortunately, this is not our top priority.
http://hackage.haskell.org/package/Hayoo seems related, but it's last upload date is in 2012.
The new Hayoo is based on the Hunt-Framework, which is not ready to be released at the moment. We're going to make a separate announcement for Hunt then. in the meantime, you can have a look at the GitHub repository [0].
It would be nice if there were an easy way to download the already generated index from the server, so that the users don't have to rebuild it on their own (which may be expensive). Just redownload every once in a while.
I could publish the serialized index of Hayoo, if you want to set up a local Hayoo despite the memory usage.
regards,
Sebastian
So if you have any comments on offline usage, I'm eager to hear!
Thanks, Gergely
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
[0] https://github.com/hunt-framework
-- Sebastian Philipp
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
participants (7)
-
Alois Cochard
-
amindfv@gmail.com
-
Andrew Gibiansky
-
Gergely Risko
-
Heinrich Apfelmus
-
Nicolas Trangez
-
Sebastian Philipp