8.16.0.4
define-who
(require define-who) | package: define-who |
This library provides a macro define/who which is similar to define, but it additionally binds who to the name of the function (as a symbol).
syntax
(define/who (head args) body ...+)
(define/who id expr)
Examples:
> (define/who (test x) (list x who)) > (test 42) '(42 test)
> (define/who ((foo #:x x) #:y y) (list x y who)) > ((foo #:x 1) #:y 2) '(1 2 foo)
> (define/who (bar) (define who 42) who) > (bar) 42
> (define/who baz (let ([table (make-hash)]) (λ () who))) > (baz) 'baz
syntax
Recognized specially within forms like define/who.
A who form out of context is a syntax error.