|(require pgmp/case)||package: rackpgmp|
(case val-expr case-clause ...)
Like Racket’s case, but may sort case-clauses in order of most frequently executed. An else clause, if one exists, will always be last.
|(require pgmp/exclusive-cond)||package: rackpgmp|
(exclusive-cond exclusive-cond-clause ...)
exclusive-cond-clause = [test-expr then-body ...+] | [else then-body ...+] | [test-expr => proc-expr]
Like Racket’s cond, but may sort exclusive-cond-clauses in order of most frequently executed. An else clause, if one exists, will always be last. Note that the clauses must be mutually exclusive or which branch is taken is non-deterministic.
When generated from another macro, be sure to preserve location information at the top level to ensure profile data can be loaded correctly.