Project Description
This project is an implementation of "5 in a row" game. Two players ("X" and "O") make moves one after another. The first player who builds an unbroken row of 5 cells wins.

This is how it looks like:

Main screen:

Main screen with some debugging info on it:

The goal
My main goal was to play with F# and to test how it could cooperate with WPF/C#.

Points of interest
  • Presentation logic uses WPF/C#, "business" logic (in this case in is game domain objects + AI) uses F#
  • Nice example of how you could use custom panels - take a look at BoardPanel
  • Strict View/ViewModel separation, though I didn't use any frameworks - it would be an overkill here
  • The project contains 100th implementation of DelegateCommand class. Hua!

Last edited Dec 23, 2011 at 1:36 AM by neutrino42, version 9