This page is part of the web mail archives of SRFI 44 from before July 7th, 2015. The new archives for SRFI 44 contain all messages, not just those from before July 7th, 2015.
In discussions just before and during the Scheme Workshop, Anton raised
the idea of separating the m:1 and m:n (single vs multivalue)
dictionaries into two types. This makes a tremendous amount of sense.
The current draft has this change, with a Map type for
single-key->single-value collections, and a Dictionary subtype for
single-key->multiple-value collections.
While correcting this, I made an attempt to rename the bulk operators to
be more consistent and less confusing. The current thought is:
*-{operator} - ordinary single instance call
*-{operator}-all - multiple value call
*-{operator}-from - call requiring another collection as a source
*-{operator}-all-from - multivalue version of above.
For example, dict-delete (deletes one key/value mapping),
dict-delete-all (deletes all mappings from a key), dict-delete-from
(deletes one key/value mapping for all keys in a source bag), and
dict-delete-all-from (deletes all key/value mappings for each key in the
source bag).
You can view the work-in-progress at sgmiller.org/code/srfi-44.html.
The concrete collection specification still needs to be updated to match
completely.
Scott
--
Attachment:
pgpvXKhCApPOb.pgp
Description: PGP signature