
I guess I should also say that I do understand that writing concepts is not a top-down process in general; however, in this case, given that heaps are well-documented theoretically and that Boost already has a few different heap implementations lacking a proper concept (or perhaps rather needing an improved one is more accurate), it's not entirely top-down here either. In this case, writing a concept first is partially top-down from the theory perspective and partially bottom-up from the learning from other implementations perspective. From that concept then, which should be relatively balanced and involve much less guesswork than usual due to the bidirectional approach, can be used as top-down guidance for library development. There, I think that got my point across a little better than my impassioned rambling from earlier this morning. Hopefully that thought process at least makes sense, even if you don't agree with it? Dan Larkin