的说在于简化程序的结构并通过抽象来增进关注点分离。单子结构还可以被看作修饰模式的独特的数学和编译时间变种。一些单子可以传载对函数是不可访问的额外数据，而且一些单子甚至具有在执行上的更细致控制，例如只在特定条件下调用一个函数。因为它们让应用程序员实现领域逻辑，而卸载样板代码至预先开发的模块，单子甚至可以当作面向切面编程的工具。单子的另一个值得注意的用途，是在其他方面都纯函数式的代码中，隔离副作用，比如输入/输出或可变的。即使纯函数式语言仍可以不使用单子来实现这些“不纯”计算，特别是通过对函数复合和（C