picrin/contrib/50.for/piclib/for.scm

20 lines
335 B
Scheme
Raw Normal View History

2014-06-27 22:32:23 -04:00
(define-library (picrin control list)
(import (scheme base)
2014-07-17 03:17:47 -04:00
(picrin control))
2014-06-27 22:32:23 -04:00
(define-syntax for
(syntax-rules ()
2015-07-18 02:39:34 -04:00
((_ expr ...)
(reset expr ...))))
2014-06-27 22:32:23 -04:00
(define (in m)
2015-07-18 02:39:34 -04:00
(shift k (apply append (map k m))))
2014-06-27 22:32:23 -04:00
(define (yield x)
(list x))
(define (null . x)
'())
(export for in yield null))