Add remaining haskell book exercises

This commit is contained in:
2025-12-11 10:28:11 +01:00
parent 3624c712d7
commit 98329e0a3d
221 changed files with 8033 additions and 2 deletions

View File

@@ -0,0 +1,24 @@
module Main where
import Control.Applicative
import LearnParsers
import Text.Fractions
import Text.Trifecta
import Text.Parser.Combinators
unitOfSuccess :: (TokenParsing m, Monad m) => m Integer
unitOfSuccess = do
number <- integer
_ <- eof
return number
type FractionOrNumber = Either Rational Integer
parseFractionOrNumber :: Parser FractionOrNumber
parseFractionOrNumber = skipMany (oneOf "\n")
>> (Left <$> try virtuousFraction)
<|> (Right <$> integer)
main :: IO ()
main = do
print $ parseString unitOfSuccess mempty "123"