projects
/
advent-of-code-23.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Tidying, mainly parsers
[advent-of-code-23.git]
/
advent08
/
Main.hs
diff --git
a/advent08/Main.hs
b/advent08/Main.hs
index 90f596d0359e317bf18193900ef62db4df88a5f0..5ab2916ced95bbdf93ebe3c6b3e7667f108c33d0 100644
(file)
--- a/
advent08/Main.hs
+++ b/
advent08/Main.hs
@@
-103,13
+103,13
@@
desertLineP :: Parser (String, Node)
nodeP :: Parser Node
nameP :: Parser String
nodeP :: Parser Node
nameP :: Parser String
-problemP = (,) <$>
((many1 directionP) <* many1 endOfLine)
<*> desertP
+problemP = (,) <$>
many1 directionP <* many1 endOfLine
<*> desertP
directionP = (L <$ "L") <|> (R <$ "R")
desertP = M.fromList <$> desertLineP `sepBy` endOfLine
directionP = (L <$ "L") <|> (R <$ "R")
desertP = M.fromList <$> desertLineP `sepBy` endOfLine
-desertLineP = (,) <$>
(nameP <* " = ")
<*> nodeP
+desertLineP = (,) <$>
nameP <* " = "
<*> nodeP
-nodeP = Node <$
> ("(" *> nameP <* ", ") <*> (nameP <* ")")
+nodeP = Node <$
"(" <*> nameP <* ", " <*> nameP <* ")"
nameP = many1 (letter <|> digit)
successfulParse :: Text -> ([Direction], Desert)
nameP = many1 (letter <|> digit)
successfulParse :: Text -> ([Direction], Desert)