Knight's tour: Difference between revisions
Content added Content deleted
(→{{header|Haskell}}: Slight disaggregation, pruned out some surplus magic from a list.) |
|||
Line 3,230: | Line 3,230: | ||
knightMoves :: [(Int, Int)] |
knightMoves :: [(Int, Int)] |
||
knightMoves = |
knightMoves = |
||
let deltas = |
let deltas = [id, negate] <*> [1, 2] |
||
in deltas >>= |
in deltas >>= |
||
(\i -> deltas >>= (bool [] . return . (i, )) <*> ((abs i /=) . abs)) |
(\i -> deltas >>= (bool [] . return . (i, )) <*> ((abs i /=) . abs)) |