Open source pattern search

General conversations about Go belong here.
Post Reply
maf
Dies in gote
Posts: 30
Joined: Tue Aug 05, 2014 3:09 am
Rank: 3d
GD Posts: 0
Has thanked: 2 times
Been thanked: 9 times

Open source pattern search

Post by maf »

Hello,

I'm vaguely planning on creating yet another Go pattern search website. Instead of writing everything myself, I'd prefer to use existing software when possible.

As far as I'm aware, only EidoGo is open source (AGPLv3). Would this be the best place to start? I'd be happy about any hints or ideas where to look further.
User avatar
HermanHiddema
Gosei
Posts: 2011
Joined: Tue Apr 20, 2010 10:08 am
Rank: Dutch 4D
GD Posts: 645
Universal go server handle: herminator
Location: Groningen, NL
Has thanked: 202 times
Been thanked: 1086 times

Re: Open source pattern search

Post by HermanHiddema »

Kombilo https://github.com/ugoertz/kombilo/ is under the MIT licence.
User avatar
yishn
Dies in gote
Posts: 57
Joined: Tue Jun 30, 2015 2:37 am
Rank: 4 kyu
GD Posts: 0
Location: Germany
Been thanked: 15 times
Contact:

Re: Open source pattern search

Post by yishn »

Here's a list of open source Go libraries:

https://github.com/waltheri/go-libraries

Even though Waltheri's go pattern search isn't open source per se, it could be an inspirational resource. But I guess you know that one already... :D
User avatar
ugoertz
Dies in gote
Posts: 63
Joined: Tue Dec 14, 2010 3:50 am
GD Posts: 0
Been thanked: 40 times

Re: Open source pattern search

Post by ugoertz »

Hello,

that sounds like an interesting project. As Herman mentioned, you could base your project on Kombilo, if you like. The main downside I see with the current Kombilo engine is that the search results are obtained only after the search is finished (which, depending on the search pattern, might be longer than you want to wait, in particular if the server is under a high load).

I have some (vague) plans to make the Kombilo pattern search engine more web friendly by putting the pattern search into a separate thread(s) which could run in the background and would produce partial results while running.

Probably this would not be too difficult, but it would take me some time because it seems most reasonable to use a more current C++ standard (C++11, say) and hence probably the code for the search engine should be updated a little bit before. (The current code is parallelized using OpenMP.)


Another (even more vague) plan would be to move to a browser-based user interface to replace the current Tkinter GUI (which has the advantage of being cross-platform, but which is not so beautiful). With these two things in place, it would be trivial to set up a web server running Kombilo in the way you have in mind. But since time is limited, I am not sure whether I will ever get there myself ...


Anyway, feel free to use Kombilo as a basis for your project. If you would like to contribute things back to Kombilo, I would be happy (but of course this is not a requirement).


Best regards,

Ulrich
Post Reply