1. The Haskell one-liner is also available in PLT Scheme (DrScheme/Full Swindle):
<pre>
(list-of (list x y z)
(x i high) (generate i) (loop (+ i 1))))
(fail)))
(define *fail* (list (lambda (_) (error 'fail "no solution"))))
(define (fail) [(begin0 (car *fail*) (set! *fail* (cdr *fail*))) 'continue])
</pre>
↧