Learning Haskell with Chess

From HaskellWiki
Revision as of 13:27, 18 March 2007 by Smazanek (talk | contribs)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Exercise 1

Learning Targets

  • recapitulate Haskell types (keywords type and data, product and sum types)
  • Helium: define equality functions (pattern matching)
  • pretty printing

Tasks

  • Define data types that represent boards, squares, positions, pieces and game states.
  • Helium: Implement suited eq-functions.
  • Implement a function prettyBoard, that transforms a board into a clearly arranged string representation (human readable :-)). Support this function with auxiliary functions that pretty print pieces, squares, ...