What about: procedure: %-copy collection => % Returns a copy of the collection. This can be done trivially with an iterator, but an implementation may choose to allow this function to behave more efficiently on certain collections. Regards Michael Burschik