Let’s take one example on that page: type-checked fields. Well, surely you can implement *that* in terms of a simple record interface! SRFI 253 does it (define-record-type-checked)! Just make sure the constructor checks the type of all the fields when the record is created, and any mutation procedures check that the new value for a field also satisfies the type check. Easy, no?
Well …