status: final (2024-11-15)
keywords: Type Checking
See also SRFI 143: Fixnums, SRFI 144: Flonums, SRFI 145: Assumptions, and SRFI 187: ALAMBDA and ADEFINE. Data validation and type checking (supposedly) make for more correct code. And faster code too, sometimes. And, in rare cases, code that's easier to follow than un-checked code. Unfortunately, Scheme does not have many (type-)checking primitives out of the box. This SRFI provides some, with the aim of allowing more performant and correct code with minimum effort on the user side. Both (manual) argument checking/validation (check-arg
) and return value(s) (values-checked
) checking/coercion are provided. Syntax sugar like define-checked
and define-record-type-checked
is added on top.