list-lang.rkt (534B)
1 #lang racket 2 3 (require typed/racket);(only-meta-in 0 typed/racket)) 4 5 (provide (except-out (all-from-out typed/racket) 6 #%module-begin) 7 (rename-out [module-begin #%module-begin])) 8 9 (require (for-syntax syntax/parse)) 10 11 (define-syntax (module-begin stx) 12 (syntax-parse stx 13 [(_ forms ... ((~literal define-list-values) name rest ...) values ...) 14 #'(#%module-begin (define-for-syntax name '(values ...)) 15 (define name rest ... '(values ...)) 16 forms ...)]))