Talk:Learning Haskell with Chess: Difference between revisions
No edit summary |
No edit summary |
||
Line 2: | Line 2: | ||
Lists are very inefficient, but understanding list handling is important for understanding functional programming. On the other hand, using <hask>Array</hask> would provide understanding for abstract data types. | Lists are very inefficient, but understanding list handling is important for understanding functional programming. On the other hand, using <hask>Array</hask> would provide understanding for abstract data types. | ||
==using state monad for the board== | |||
Only possible with advanced students, do not try this in introductory courses. | |||
==full ruleset vs. reduced and simplified ruleset== | ==full ruleset vs. reduced and simplified ruleset== |
Revision as of 09:18, 19 March 2007
list handling vs. abstract data types (array)
Lists are very inefficient, but understanding list handling is important for understanding functional programming. On the other hand, using Array
would provide understanding for abstract data types.
using state monad for the board
Only possible with advanced students, do not try this in introductory courses.
full ruleset vs. reduced and simplified ruleset
To implement the full ruleset you have to remember and consider previous states (in particular for castling rule and capturing en passant).
representation of positions
Is type Pos = (Int,Int)
ok? Or better something like type Pos = (Row, Column), data Row = A | B | ... | H, data Column = ?
. How to model the constraints (0<=x,y<=7)?