diff --git a/src/Sudoku.hs b/src/Sudoku.hs index 9bcd3ef..576ff71 100644 --- a/src/Sudoku.hs +++ b/src/Sudoku.hs @@ -113,11 +113,11 @@ nextGrids grid = solve :: Grid -> Maybe Grid solve grid = pruneGrid grid >>= solve' where - solve' grid' - | isGridInvalid grid = Nothing - | isGridFilled grid' = Just grid' - | otherwise = - let (grid1, grid2) = nextGrids grid' + solve' g + | isGridInvalid g = Nothing + | isGridFilled g = Just g + | otherwise = + let (grid1, grid2) = nextGrids g in solve grid1 <|> solve grid2 main :: IO ()