将我的解析器类型描述为一系列 monad 转换器

Describing my Parser type as a series of monad transformers

我必须将 Parser 类型描述为一系列 monad 转换器。 据我了解,monad 转换器用于将 monad 包装到另一个 monad 中。但是我不明白这里的任务是什么。

无需为 Parser 定义新类型,您只需将其定义为由一个或多个 monad 转换器创建的类型的类型 别名。也就是说,您的定义看起来像

type Parser a = SomeMonadT <some set of monads and types>

那么,您的任务是确定要使用哪个 monad 转换器,以及转换器的参数应该是什么。