diff --git a/conventions.rkt b/conventions.rkt index 3bee2e0..d72f11a 100644 --- a/conventions.rkt +++ b/conventions.rkt @@ -513,6 +513,11 @@ [("begin" "begin-for-syntax") (format-uniform-body/helper 0 #:require-body? #f)] [("test-begin") (format-uniform-body/helper 0 #:require-body? #f)] + + [("delay" "lazy") (format-uniform-body/helper 0)] + [("delay/name" "delay/strict" "delay/sync" "delay/thread" "delay/idle") + (format-uniform-body/helper 0)] + [("begin0") (format-uniform-body/helper 1)] [("module+") (format-uniform-body/helper 1)] [("let/ec" "let/cc") (format-uniform-body/helper 1)] diff --git a/tests/test-cases/delay.rkt b/tests/test-cases/delay.rkt new file mode 100644 index 0000000..7601f6b --- /dev/null +++ b/tests/test-cases/delay.rkt @@ -0,0 +1,10 @@ +#lang racket + +(delay/thread (begin0 (run-in-other-place p* error?) + (when (zero? (modulo i 10)) + (eprintf ".")))) + +(delay/thread #:wait-for wait-evt-expr #:work-while while-evt-expr #:tick tick-secs-expr #:use use-ratio-expr + (begin0 (run-in-other-place p* error?) + (when (zero? (modulo i 10)) + (eprintf ".")))) diff --git a/tests/test-cases/delay.rkt.out b/tests/test-cases/delay.rkt.out new file mode 100644 index 0000000..d3362e0 --- /dev/null +++ b/tests/test-cases/delay.rkt.out @@ -0,0 +1,15 @@ +#lang racket + +(delay/thread + (begin0 (run-in-other-place p* error?) + (when (zero? (modulo i 10)) + (eprintf ".")))) + +(delay/thread + #:wait-for wait-evt-expr + #:work-while while-evt-expr + #:tick tick-secs-expr + #:use use-ratio-expr + (begin0 (run-in-other-place p* error?) + (when (zero? (modulo i 10)) + (eprintf "."))))