"mate" Board: Results: showSquare ? ((,) -1 ?1) ==> ! Prelude.(!!): negative index showSquare ? ((,) 0 ?1) ==> ! Prelude.(!!): negative index kingSquare Black emptyBoard ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq kingSquare White emptyBoard ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq showSquare ? ((,) -1 ?1) ==> ! Prelude.(!!): negative index showSquare ? ((,) 0 ?1) ==> ! Prelude.(!!): negative index kingSquare Black emptyBoard ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq kingSquare White emptyBoard ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq showBoard (rmPieceAt Black ? emptyBoard) ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa showBoard (rmPieceAt White ? emptyBoard) ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa showSquare ? ((,) -1 ?1) ==> ! Prelude.(!!): negative index showSquare ? ((,) 0 ?1) ==> ! Prelude.(!!): negative index pieceAt (rmPieceAt Black ? emptyBoard) ?1 ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa pieceAt (rmPieceAt White ? emptyBoard) ?1 ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa emptyAtAll (rmPieceAt Black ? emptyBoard) ?1 ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa emptyAtAll (rmPieceAt White ? emptyBoard) ?1 ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa kingSquare Black emptyBoard ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq kingSquare White emptyBoard ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq showBoard (rmPieceAt Black ? emptyBoard) ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa showBoard (rmPieceAt Black ? (rmPieceAt Black ?1 emptyBoard)) ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa showBoard (rmPieceAt White ? emptyBoard) ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa showBoard (rmPieceAt White ? (rmPieceAt White ?1 emptyBoard)) ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa showSquare ? ((,) -1 ?1) ==> ! Prelude.(!!): negative index showSquare ? ((,) 0 ?1) ==> ! Prelude.(!!): negative index pieceAt (rmPieceAt Black ? emptyBoard) ?1 ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa pieceAt (rmPieceAt White ? emptyBoard) ?1 ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa emptyAtAll (rmPieceAt Black ? emptyBoard) ?1 ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa emptyAtAll (rmPieceAt White ? emptyBoard) ?1 ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa kingSquare Black emptyBoard ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq kingSquare Black (rmPieceAt Black ? emptyBoard) ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa kingSquare Black (rmPieceAt White ? emptyBoard) ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq kingSquare Black (putPieceAt ? ((,) White ?1) emptyBoard) ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq kingSquare White emptyBoard ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq kingSquare White (rmPieceAt Black ? emptyBoard) ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq kingSquare White (rmPieceAt White ? emptyBoard) ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa kingSquare White (putPieceAt ? ((,) Black ?1) emptyBoard) ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq forcesColoured Black (rmPieceAt Black ? emptyBoard) ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa Move: Results: showMoves ([]) ==> ! Move.hs:31:0-67: Non-exhaustive patterns in function showMoves showMoves ([]) ==> ! Move.hs:31:0-67: Non-exhaustive patterns in function showMoves showMoves ([]) ==> ! Move.hs:31:0-67: Non-exhaustive patterns in function showMoves showMoves ([]) ==> ! Move.hs:31:0-67: Non-exhaustive patterns in function showMoves showMoves ([]) ==> ! Move.hs:31:0-67: Non-exhaustive patterns in function showMoves moveDetailsFor Black (rmPieceAt Black ? emptyBoard) ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa moveDetailsFor White (rmPieceAt White ? emptyBoard) ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa kingincheck Black (rmPieceAt White ? emptyBoard) ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa kingincheck White (rmPieceAt Black ? emptyBoard) ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa showMoves ([]) ==> ! Move.hs:31:0-67: Non-exhaustive patterns in function showMoves moveDetailsFor Black (rmPieceAt Black ? emptyBoard) ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa moveDetailsFor Black (rmPieceAt Black ? (rmPieceAt Black ?1 emptyBoard)) ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa moveDetailsFor White (rmPieceAt White ? emptyBoard) ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa moveDetailsFor White (rmPieceAt White ? (rmPieceAt White ?1 emptyBoard)) ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa kingincheck Black (rmPieceAt White ? emptyBoard) ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa kingincheck Black (rmPieceAt White ? (rmPieceAt White ?1 emptyBoard)) ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa kingincheck White (rmPieceAt Black ? emptyBoard) ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa kingincheck White (rmPieceAt Black ? (rmPieceAt Black ?1 emptyBoard)) ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa showMoves ([]) ==> ! Move.hs:31:0-67: Non-exhaustive patterns in function showMoves Problem: Results: Solution: Results: solve ? ?1 -1 ==> ! Solution.hs:(13,0)-(24,34): Non-exhaustive patterns in function solution solve ? ?1 0 ==> ! Solution.hs:(13,0)-(24,34): Non-exhaustive patterns in function solution solve ? ?1 -1 ==> ! Solution.hs:(13,0)-(24,34): Non-exhaustive patterns in function solution solve ? ?1 0 ==> ! Solution.hs:(13,0)-(24,34): Non-exhaustive patterns in function solution solve ? ?1 -1 ==> ! Solution.hs:(13,0)-(24,34): Non-exhaustive patterns in function solution solve ? ?1 0 ==> ! Solution.hs:(13,0)-(24,34): Non-exhaustive patterns in function solution solve ? ?1 -1 ==> ! Solution.hs:(13,0)-(24,34): Non-exhaustive patterns in function solution solve ? ?1 0 ==> ! Solution.hs:(13,0)-(24,34): Non-exhaustive patterns in function solution solve ? ?1 -1 ==> ! Solution.hs:(13,0)-(24,34): Non-exhaustive patterns in function solution solve ? ?1 0 ==> ! Solution.hs:(13,0)-(24,34): Non-exhaustive patterns in function solution solve ? ?1 -1 ==> ! Solution.hs:(13,0)-(24,34): Non-exhaustive patterns in function solution solve ? ?1 0 ==> ! Solution.hs:(13,0)-(24,34): Non-exhaustive patterns in function solution solve (rmPieceAt Black ? emptyBoard) Black 1 ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa solve (rmPieceAt White ? emptyBoard) White 1 ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa solve ? ?1 -1 ==> ! Solution.hs:(13,0)-(24,34): Non-exhaustive patterns in function solution solve ? ?1 0 ==> ! Solution.hs:(13,0)-(24,34): Non-exhaustive patterns in function solution solve (rmPieceAt Black ? emptyBoard) Black 1 ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa solve (rmPieceAt Black ? (rmPieceAt Black ?1 emptyBoard)) Black 1 ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa solve (rmPieceAt Black ? (rmPieceAt White ?1 emptyBoard)) Black 1 ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa solve (rmPieceAt White ? (rmPieceAt Black ?1 emptyBoard)) Black 1 ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa solve (rmPieceAt Black ? (rmPieceAt White ?1 emptyBoard)) White 1 ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa solve (rmPieceAt White ? emptyBoard) White 1 ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa solve (rmPieceAt White ? (rmPieceAt Black ?1 emptyBoard)) White 1 ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa solve (rmPieceAt White ? (rmPieceAt White ?1 emptyBoard)) White 1 ==> ! Board.hs:73:0-61: Non-exhaustive patterns in function rPa solve ? ?1 -1 ==> ! Solution.hs:(13,0)-(24,34): Non-exhaustive patterns in function solution solve ? ?1 0 ==> ! Solution.hs:(13,0)-(24,34): Non-exhaustive patterns in function solution solve (putPieceAt ((,) 0 0) ((,) Black King) emptyBoard) Black 1 ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq solve (putPieceAt ((,) 0 1) ((,) Black King) emptyBoard) Black 1 ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq solve (putPieceAt ((,) 1 0) ((,) Black King) emptyBoard) Black 1 ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq solve (putPieceAt ((,) 1 1) ((,) Black King) emptyBoard) Black 1 ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq solve (putPieceAt ((,) 0 0) ((,) Black Queen) emptyBoard) Black 1 ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq solve (putPieceAt ((,) 0 1) ((,) Black Queen) emptyBoard) Black 1 ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq solve (putPieceAt ((,) 1 0) ((,) Black Queen) emptyBoard) Black 1 ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq solve (putPieceAt ((,) 1 1) ((,) Black Queen) emptyBoard) Black 1 ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq solve (putPieceAt ((,) 0 1) ((,) Black Rook) emptyBoard) Black 1 ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq solve (putPieceAt ((,) 1 0) ((,) Black Rook) emptyBoard) Black 1 ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq solve (putPieceAt ((,) 1 1) ((,) Black Rook) emptyBoard) Black 1 ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq solve (putPieceAt ((,) 0 0) ((,) Black Bishop) emptyBoard) Black 1 ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq solve (putPieceAt ((,) 0 1) ((,) Black Bishop) emptyBoard) Black 1 ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq solve (putPieceAt ((,) 1 0) ((,) Black Bishop) emptyBoard) Black 1 ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq solve (putPieceAt ((,) 1 1) ((,) Black Bishop) emptyBoard) Black 1 ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq solve (putPieceAt ((,) -1 0) ((,) Black Knight) emptyBoard) Black 1 ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq solve (putPieceAt ((,) -1 1) ((,) Black Knight) emptyBoard) Black 1 ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq solve (putPieceAt ((,) 0 -1) ((,) Black Knight) emptyBoard) Black 1 ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq solve (putPieceAt ((,) 0 0) ((,) Black Knight) emptyBoard) Black 1 ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq solve (putPieceAt ((,) 0 1) ((,) Black Knight) emptyBoard) Black 1 ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq solve (putPieceAt ((,) 1 -1) ((,) Black Knight) emptyBoard) Black 1 ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq solve (putPieceAt ((,) 1 0) ((,) Black Knight) emptyBoard) Black 1 ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq solve (putPieceAt ((,) 1 1) ((,) Black Knight) emptyBoard) Black 1 ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq solve (putPieceAt ((,) -1 -1) ((,) Black Pawn) emptyBoard) Black 1 ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq solve (putPieceAt ((,) -1 0) ((,) Black Pawn) emptyBoard) Black 1 ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq solve (putPieceAt ((,) -1 1) ((,) Black Pawn) emptyBoard) Black 1 ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq solve (putPieceAt ((,) 0 -1) ((,) Black Pawn) emptyBoard) Black 1 ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq solve (putPieceAt ((,) 0 0) ((,) Black Pawn) emptyBoard) Black 1 ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq solve (putPieceAt ((,) 0 1) ((,) Black Pawn) emptyBoard) Black 1 ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq solve (putPieceAt ((,) 1 -1) ((,) Black Pawn) emptyBoard) Black 1 ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq solve (putPieceAt ((,) 1 0) ((,) Black Pawn) emptyBoard) Black 1 ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq solve (putPieceAt ((,) 1 1) ((,) Black Pawn) emptyBoard) Black 1 ==> ! Board.hs:(82,0)-(83,27): Non-exhaustive patterns in function kSq Writing: Board.hs.html Writing: Move.hs.html Writing: Problem.hs.html Writing: Solution.hs.html Writing: hpc_index.html Writing: hpc_index_fun.html Writing: hpc_index_alt.html Writing: hpc_index_exp.html ["Board.hs","Move.hs","Problem.hs","Solution.hs"]