PasteRack.org
Paste # 8146
2020-04-03 00:23:56

Fork as a new paste.

Paste viewed 146 times.


Embed:

`define-values' in `syntax-rules'

  (define-syntax define-values
    (syntax-rules ()
      ((_ () body)
       (call-with-values (thunk body) void))
      ((_ (var . vars) body)
       (begin
         (define var (call-with-values (thunk body) list))
         (define-values vars (apply values (cdr var)))
         (set! var (car var))))
      ((_ var body)
       (define var (call-with-values (thunk body) list)))))