Live data from Hacker News

Using Haskell to debug a C chess engine

michaelburge.us

1–6 of 6 posts

Re: Using Haskell to debug a C chess engine

#4
post #3

Personally, I think an engine written in Haskell would be more interesting. Given how ridiculously strong some engines are when running on commodity hardware, a little performance hit wouldn't be the end of the world.

I probably won't do an article on it, but I did have a couple-years old Shogi engine in Haskell:

Implementation: https://bitbucket.org/MichaelBurge/shogi/src/f2370832b328ae1...

Tests: https://bitbucket.org/MichaelBurge/shogi/src/f2370832b328ae1...

The code & style are pretty similar between the Haskell and the C. I found the C easier to write: The C engine was written and debugged within about 3 days, while the Haskell Shogi engine has a couple weeks of commits.

Re: Using Haskell to debug a C chess engine

#5
post #3

Personally, I think an engine written in Haskell would be more interesting. Given how ridiculously strong some engines are when running on commodity hardware, a little performance hit wouldn't be the end of the world.

I probably won't do an article on it, but I did have a couple-years old Shogi engine in Haskell: Implementation: https://bitbucket.org/MichaelBurge/shogi/src/f2370832b328ae1... Tests: https://bitbucket.org/MichaelBurge/shogi/src/f2370832b328ae1... The code & style are pretty similar between the Haskell and the C. I found the C easier to write: The C engine was written and debugged within about 3 days, while the Haske…

Why do you think the C was easier to write?

Re: Using Haskell to debug a C chess engine

#6

Earlier quoted context omitted.

I probably won't do an article on it, but I did have a couple-years old Shogi engine in Haskell: Implementation: https://bitbucket.org/MichaelBurge/shogi/src/f2370832b328ae1... Tests: https://bitbucket.org/MichaelBurge/shogi/src/f2370832b328ae1... The code & style are pretty similar between the Haskell and the C. I found the C easier to write: The C engine was written and debugged within about 3 days, while the Haske…

Why do you think the C was easier to write?

I looked a few things up after Michael's post, and it seems there are a lot of resources and codified idioms around writing chess engines in C. (E.g. tons of bit-twiddling hacks, many related to the fortuitous existence of 64-bit integers. [Not that you can't do those in Haskell.])