a few thoughts on ABCD and collections oriented programming