Rewrote do: to expand into do.
This commit is contained in:
parent
7442f14305
commit
23f30af459
|
@ -368,15 +368,15 @@ This file defines two sorts of primitives. All of them are provided into any mod
|
||||||
(define-syntax (do: stx)
|
(define-syntax (do: stx)
|
||||||
(syntax-parse stx #:literals (:)
|
(syntax-parse stx #:literals (:)
|
||||||
[(_ : ty
|
[(_ : ty
|
||||||
((var:annotated-name init (~optional step:expr #:defaults ([step #'var]))) ...)
|
((var:annotated-name rest ...) ...)
|
||||||
(stop?:expr (~optional (~seq finish0:expr finish:expr ...) #:defaults ([finish0 #'(void)] [(finish 1) '()])))
|
(stop?:expr ret ...)
|
||||||
c:expr ...)
|
c:expr ...)
|
||||||
(syntax/loc
|
(syntax/loc
|
||||||
stx
|
stx
|
||||||
(let: doloop : ty ([var.name : var.ty init] ...)
|
(ann (do ((var.ann-name rest ...) ...)
|
||||||
(if stop?
|
(stop? ret ...)
|
||||||
(begin finish0 finish ...)
|
c ...)
|
||||||
(begin c ... (doloop step ...)))))]))
|
ty))]))
|
||||||
|
|
||||||
(define-syntax (provide: stx)
|
(define-syntax (provide: stx)
|
||||||
(syntax-parse stx
|
(syntax-parse stx
|
||||||
|
|
Loading…
Reference in New Issue
Block a user