SRFI 273: Extensions to Data (Type-)Checking

by Artyom Bologov

status: final (2026-08-03)

keywords: Type Checking

See also SRFI 253: Data (Type-)Checking.

Abstract

The original SRFI 253 established a basis for type-checked (or otherwise checked) data handling. But it lacked some quality-of-life features. This SRFI extends SRFI 253 to match existing implementation practice and common sense. Provided extensions are: check aliasing with define-check; pre- and post-declaration of type / check with declare-checked; return value checks in lambda-checked, case-lambda-checked, and define-checked; and some optimizable, supported, and explicitly unsupported patterns suggested to implementors.