The case form of racket differs from that of R6RS or R5RS by being based on equal? instead of eqv? (in addition to allowing internal definitions).
For the selected case-clause, the results of the last then-body, which is in tail position with respect to the case form, are the results for the whole case form.
A case-clause that starts with else must be the last case-clause.
The case form can dispatch to a matching case-clause in O(log N) time for N datums.
'big
'small
"animal"
'backwards
"ex"
"quoted ex"
[(lllultlnlo)"letter"][(ndnlno)"number"]> (classify#\A)"letter"
> (classify#1ε)"number"
> (classify#\!)"other"
Added in version 8.11.1.8 of package base.
syntax
( case/equal val-exprcase-clause...)
syntax
( case/equal-always val-exprcase-clause...)
syntax
( case/eq val-exprcase-clause...)
syntax
( case/eqv val-exprcase-clause...)