代数效应及其处理程序已经成为了在函数式编程中处理程序副作用(效应)的主流方法。不同效应之间的模块化组合与语法和语义的清晰分离使得它们对许多程序员都非常有吸引力。然而,并不是所有的效应都是代数的,有些需要更复杂的处理机制。特别的,有一系列效应会携带或者创建一个作用域,并对作用域内的程序进行一些特殊的操作。这样一来它们的后续就会被分成两部分:作用域内的部分和作用域外的部分。它们之间的模块化组合需要特别考虑这个作用域的影响。这一类效应被称为带作用域效应,它们正在受到越来越多的关注,并且在很多语言的库中得到了应用。目前有很多支持代数效应及其处理程序的演算,但仍然缺少一个支持带作用域效应及其处理程序的演算。