language-sh- A package for parsing shell scripts




class (Monad m, Functor m) => ExpressionMapperM m f | f -> m whereSource

The idea here is to prevent duplicating code needlessly. We could go even more extreme and make a third parameter, but then we have WAY too many instances, and they all depend on every other one anyway... class Applicative a => ExpressionMapper a f t where mapSh :: f -> t -> a t

class ExpressionMapper f whereSource