A draft implementation of the collector pattern