Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

UCI/XBoard Support #22

Open
Mk-Chan opened this issue Nov 16, 2018 · 3 comments
Open

UCI/XBoard Support #22

Mk-Chan opened this issue Nov 16, 2018 · 3 comments

Comments

@Mk-Chan
Copy link

Mk-Chan commented Nov 16, 2018

I can see the point here: jordanbray/chess#6 but it also suggests putting all the engine communication stuff into a different library which I'm not too much a fan of as it may be harder to discover. Is there any consensus on this?
I actually would like to help out too but my Rust is not up to the mark yet.

@niklasf
Copy link
Owner

niklasf commented Nov 17, 2018

We disagree on where to draw the line, for example I think it's a good idea to at least include parsers for notation like e1h1 and Naxb3, but a full implementation of the UCI protocol (or XBoard) definitely belongs in a seperate crate. Managing dependencies is much more comfortable with cargo than with pip.

@denizsincar29
Copy link

@niklasf now how to communicate with uci chess engines via rust that beautiful way as I did in python chess? Don't want to make all dirty work and parse it myself...

@johanfleury
Copy link
Contributor

Hey, I just published shakmaty-uci. It provides an enum (UciMessage) to write and parse UCI messages to and from the engine. It’s based on/inspired by vampirc-uci but uses Nom for parsing.

It does not (yet) handle actual communication with the engine, but I’ll probably add that in the future.

@niklasf if you’re interested, I started this crate as a module of shakmaty. I think it might be better to have this as a separate library, to not clutter shakmaty (especially if I add engine communication), but I could easily provide a PR if you would be interested in integrating this in your crate.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants