Play with syntax
This commit is contained in:
@@ -37,7 +37,7 @@ parseNumberPart row column rawNumber = let value = parseNumberPartValue rawNumbe
|
||||
|
||||
parseLine :: Int -> Int -> String -> Engine -> Engine
|
||||
parseLine _ _ [] engine = engine
|
||||
parseLine row column (h: t) engine | isDigit h = let newNumberPart = parseNumberPart row column (h: t)
|
||||
parseLine row column (h: t) engine | isDigit h = let newNumberPart = parseNumberPart row column $ h: t
|
||||
newNumberLength = numberLength newNumberPart
|
||||
in parseLine row (column + newNumberLength)
|
||||
(drop (newNumberLength - 1) t)
|
||||
@@ -56,7 +56,7 @@ parseEngine row engine = do done <- isEOF
|
||||
then return engine
|
||||
else do line <- getLine
|
||||
let newEngine = parseLine row 1 line engine
|
||||
parseEngine (row+1) newEngine
|
||||
parseEngine (row + 1) newEngine
|
||||
|
||||
parse :: IO Engine
|
||||
parse = parseEngine 1 Engine {numbers = [], symbols = []}
|
||||
|
||||
@@ -6,7 +6,7 @@ import qualified Part2
|
||||
|
||||
|
||||
main = do engine <- parse
|
||||
let part1Res = sum (Part1.getActualPartValuesNumbersFromEngine engine)
|
||||
let part1Res = sum $ Part1.getActualPartValuesNumbersFromEngine engine
|
||||
print part1Res
|
||||
let part2Res = sum (Part2.getGearRatiosFromEngine engine)
|
||||
let part2Res = sum $ Part2.getGearRatiosFromEngine engine
|
||||
print part2Res
|
||||
|
||||
@@ -15,4 +15,4 @@ getActualPartNumbers (h: t) symbolsCoordinates
|
||||
|
||||
getActualPartValuesNumbersFromEngine :: Engine -> [Int]
|
||||
getActualPartValuesNumbersFromEngine engine =
|
||||
map value (getActualPartNumbers (numbers engine) (map coordinates (symbols engine)))
|
||||
map value $ getActualPartNumbers (numbers engine) $ map coordinates $ symbols engine
|
||||
|
||||
@@ -32,4 +32,4 @@ getGearRatios (h: t) numberParts = let gearRatio = getGearRatio h numberParts
|
||||
else getGearRatios t numberParts
|
||||
|
||||
getGearRatiosFromEngine :: Engine -> [Int]
|
||||
getGearRatiosFromEngine engine = getGearRatios (symbols engine) (numbers engine)
|
||||
getGearRatiosFromEngine engine = getGearRatios (symbols engine) $ numbers engine
|
||||
|
||||
Reference in New Issue
Block a user