?ukasz Lew wrote:
Jason, can You tell me why You don't want to use libego instead?
Actually this is open question to all comp-go readers.

Is libego too complicated? Do You have problems with compilation?
Or You are not comfortable with the GNU license? Any other reason?

I probably have a lot of little reasons. When it first came out, I already had my own C++ based framework and didn't really worry about switching or not. Of course, now that I'm rewriting my bot, using someone else's framework would make more sense. When I look at libego, the big turn offs would be the lack of documentation, coding style (the use of #defines, global variables, hard coding to a set board size, etc...), and lack of a collaborative environment such as sourceforge (repository access, bug tracking, etc...).

My rewrite is using a little known language D. Here are some items that have been developed in the housebot rewrite that I really like:
* Multi-threaded core routines
* Inter-process communication with delegates (function objects) instead of fixed data structures and special handlers (like the MPI uses I've seen) * Decentralized GTP command registration. I originally used the GTP from Gnu Go but didn't like how many places in the code I had to modify when adding new (debug) functions.
* Variable board sizes and shapes (currently, rectangular boards).

Instead of just supporting one best implementation, I want to have a flexible framework that supports the interests of many programmers. Eventually, the core will allow a variety of plug and play components/algorithms... I want to support different types of boards (such as bit boards and 3D boards), different types of chain tracking (such as the disjoint set data structure or gnu style int chain ID), and different search methods (UCT, alpha beta, PN, df-PN, etc...).

I'm always recruiting people to help if that inspires anyone ;)
_______________________________________________
computer-go mailing list
computer-go@computer-go.org
http://www.computer-go.org/mailman/listinfo/computer-go/

Reply via email to