Email list hosting service & mailing list manager


SRFI-116 Reference Implementation Jeremy Steward 24 Jul 2016 00:15 UTC

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Hello all,

After packaging SRFI-116 for CHICKEN Scheme (quite some time ago now),
I decided I'd finally add the documentation for the API to CHICKEN's
wiki. While going through the documentation, I noticed that SRFI-116
is supposed to provide the following comparators / comparator-procedures
:

* ipair-comparator
* ilist-comparator
* make-ilist-comparator
* make-improper-ilist-comparator
* make-icar-comparator
* make-icdr-comparator

There are two problems with this:

1. No implementation of these procedures can be found in the reference
implementation
2. These comparators are specified to be SRFI 114 comparators. SRFI
114 has been depreciated by SRFI 128, so this should be updated / an
errata listed if possible.

That said, I'm not 100% sure how to go about making the comparators
above, as I mostly just packaged the code to work with CHICKEN Scheme,
and didn't touch the implementation myself. I can do the work to write
these myself, but I think the fact they are missing should be listed
as an open issue with the SRFI.

I also noticed the following typo in the Rationale for SRFI-116 (seen
here: http://srfi.schemers.org/srfi-116/srfi-116.html)

| Because of the Liskov Substitution Principle, it is not possible
| to treat mutable pairs as either a subtype or a supertype of
| mutable ones;

I assume one of these should say "immutable" instead of "mutable",
otherwise this sentence seems... tautologically incorrect?

Regards,
- --
Jeremy Steward

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iQIcBAEBCAAGBQJXlAhaAAoJEKflx7ZMcbY7kwkP+QG2AjvsNLM9wAtgvmwiOe4F
sxkhQaNkH9dkKQIcVDuSE0W8ZmeCehDRK6bolekZAD2o9cjL/tAt0fOQf7frUQzz
viVDxYlApuQ8aBhoaVWw88pNNZYH/aYVVJorOEdD36MFrPdm8TF5nX/IF6iHUBVY
3rYLp4+/iMf3+3HRqvxvkC+qB4DNvHJeDf9QhUf/VwJMBgi8R3Z+jHSTnoNtcr9d
sANCOltEv8VdnLFvRyApdAHCGnHVb68QXfZKKa44RZgYZsiRR65oV0Ts7WcExapm
mlE7cgLP/JAIlhvH6dJZywKHdI0vojDqIahzANXV3vsQ4wokcJdPt9ZpUNDtlVEn
1YMzhin863ESrGx4ygvQZ0+GsjT6E3jdlq+PFISRav5PphPbB/+/bMOOCdf6zP3J
arQbOFLrXHrSEF3R48cyoanRI+kVLNURME7fKb4M5e1aOJ8+NWziqyy+RkvkNnoi
ybIQq+jEMS56cJoD6KitovHQyq7eYEJ/BtXYG3yZdoBQVQkoUUi0MWyc1OI+Te5/
1XS77DoVReC1YVUAWpSERw8S1j+ShKTkOpk9fyQM+Zl0xGlWDSrWQkpQ/v9mBkPv
PhzwAermGLPqz5ksH1qxO1oQ46Svy1QwkdMjVkp2ZDjBMXjwUAjsM5NlOOdw7a81
TMMCP5kM2jLIoMzUZUNr
=pASm
-----END PGP SIGNATURE-----