Assuming this parsing function that parses fractions from a string:

What’s the benefit of implementing it using monads?

How does this align with the fact that the Parser constructor takes just a function?

Aris Goudouras
Note that `decimal`(the first parser in the chain) is a `Parser`, which encapsulates a function that takes a `string` as input. This aligns with what the expected input type is in our case.