I just wrote a trivial Chicken implementation of SRFI 229 on top of the
built-in (chicken memory representation) library, which takes an existing
procedure object and gives you another procedure that behaves identically
but has an extra slot, which is initialized.  For Chicken users, this
should be far more efficient than the portable library.  I wrote it using
native syntax "(module ...)" rather than R7RS to minimize dependencies.

The `procedure/tag` function returns #f if its argument is not a tagged
procedure, which meets the contract of "is an error".

If everyone is okay with it, it can be pulled in from johnwcowan/srfi-229.

Reply via email to