John McCarthy 在他的著作 A Basis for a Mathematical Theory of Computation 中提出了一个操作符叫做 amb.
amb 接受一些参数,它会从这些参数里“不确定”的选一个出来。选 择的标准是:要让整个程序得到“有效的结果”。
amb 跟 LISP 一样古老,但是它却强大得难以置信。使用它,我们可 以轻而易举的写出需要大量回溯才能解决的问题。它可以被作为一种 通用的回溯机制。
在后面我们会看到如何用 amb 轻而易举的解决很多问题。