Snake
This is a student-developed chess engine that I created as an exercise to gain a deeper understanding of the C programming language. NYU's Computer Systems Organization course (CSCI-UA 201) first introduced me to C - my new favorite language (after C#, of course) and inspired me to resume this project.
The Snake Chess engine is based on the techniques described in the Bitboard chess engine in C video series.
Components
Bitboard visualizer
To visualize and understand the magic constants involved in bitboard manipulation, I have created a companion web application available here. The tool enables rapid experimentation with bitboard data structures.
Object-oriented conventions
This project brings an object-oriented approach to pure C. See here for details.
License
This repository is licensed with the MIT license.
Thanks
I'd like to thank Kaylee Kim, Eric Ho, and Aren Balian for supporting me on my journey (descent?) into the madness of bitboards. "Project Snake" began as our high-school aspiration in Irvine, California; this software hopes to make that vision a reality in the form of a working UCI-compatible chess engine.
Attribution
This software uses third-party libraries or other resources that may be distributed under licenses different than the software. Please see the third-party notices included here.