<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><br><blockquote type="cite"><div>2- create new interfaces for the new protocols (Jason Aeschliman was<br>working on that)<br></div></blockquote></div><br><div>Just for reference, here's some work I've done for OOP style collections:</div><div><a href="https://github.com/jaeschliman/com.clearly-useful.generic-collection-interface/blob/master/protocols.lisp">https://github.com/jaeschliman/com.clearly-useful.generic-collection-interface/blob/master/protocols.lisp</a></div><div><br></div><div>seq is proper-list-like</div><div>indexable is vector-like</div><div>associative is hash-table-like</div><div><br></div><div>these protocols are only for accessing, I haven't given any thought yet to</div><div>protocols for modifying collections. I haven't done anything for sets or trees</div><div>yet either. I will say that in terms of reading, it makes sense to me to treat sets</div><div>as maps from object-> value, where the meaning of 'value' differs depending</div><div>on what kind of set it is, a plain set would be obj->t, a counted set obj->number</div><div>etc, so testing for set membership could just be contains-key-p</div><div><br></div><div>Cheers,</div><div><br></div><div>Jason</div></body></html>