All pastes #265062 Raw Edit

Miscellany

public text v1 · immutable
·published 2006-12-02 23:55 UTC
rendered paste body
adjacency :: (Int8, Int8) -> [(Int8, Int8)]
adjacency (x, y) = reverse $ do
    xo <- [-1, 1]
    yo <- [-1, 1]
    (xm, ym) <- [(1, 2), (2, 1)]
    let rx = x + xo * xm
    let ry = y + yo * ym
    guard $ all id [rx >= 0, ry >= 0, ry < 8, rx < 8]
    return (rx, ry)