3 ms·
The Scheme version is not worthy of a blog post: (define-syntax until (syntax-rules () ((until pred expr ...) (let loop () (if (not
by brlewis 16y ago
The Scheme version is not worthy of a blog post:
(define-syntax until
(syntax-rules ()
((until pred expr ...)
(let loop ()
(if (not pred)
(begin
(begin expr ...)
(loop)))))))
In dialects with WHEN syntax (mzcheme, Kawa, probably many others) it's even more concise:
(define-syntax until
(syntax-rules ()
((until pred expr ...)
(let loop ()
(when (not pred)
(begin expr ...)
(loop))))))