@@ -128,7 +128,7 @@ paramEscapeParser = do
128128literalPercentParser :: CapParser BuildResults
129129literalPercentParser = do
130130 _ <- char '%'
131− startOffset <- getState >>= return . nextOffset
131+ startOffset <- nextOffset <$> getState
132132 incOffset 1
133133 return $ BuildResults 0 [Bytes startOffset 1] []
134134
@@ -154,7 +154,7 @@ incrementOpParser = do
154154pushOpParser :: CapParser BuildResults
155155pushOpParser = do
156156 _ <- char 'p'
157− paramN <- digit >>= return . (\d -> read [d])
157+ paramN <- read . pure <$> digit
158158 incOffset 2
159159 return $ BuildResults (fromEnum paramN) [PushParam $ paramN - 1] []
160160
@@ -299,7 +299,7 @@ compareOpParser
299299bytesOpParser :: CapParser BuildResults
300300bytesOpParser = do
301301 bytes <- many1 $ satisfy (/= '%')
302− startOffset <- getState >>= return . nextOffset
302+ startOffset <- nextOffset <$> getState
303303 let !c = length bytes
304304 !s <- getState
305305 let s' = s { nextOffset = startOffset + c }