
DISCLAIMER: I have not looked at the GGL yet, so my comments are mostly of a meta character. On Nov 17, 2009, at 2:17 PM, Simonson, Lucanus J wrote:
Jonathan Franklin wrote:
On Tue, Nov 17, 2009 at 10:15 AM, Jose <jmalv04@gmail.com> wrote:
In my opinion, a good r-tree implementation is necessary. I have no experience with the above library but I've seen other code from this author to be of high quality.
For the purposes of my own review, I'm trying to decide whether I think the library should be accepted without a spatial index. Would anyone like to sway my opinion one way or the other? :-)
Personally I don't think that is a reasonable condition. If I were managing the review I would discount such an objection as unreasonable. Implementing a good 2D spatial index that is correct and competitively fast and memory efficient is 9 months of work.
Why would the effort needed matter for an evaluation of a library?
I won't go into all that is required. Implementing a spatial index that is merely correct and sufficiently generic is probably one month of work (design, implementation, test, documentation) for a very experience developer working without distractions.
So, *if* the spatial index is considered crucial for the intended uses of GGL, we just wait for 3 part-time months for a re-admission into the review queue. That does not sound unreasonable, given that hypothesis of the index being crucial.
These estimates should be considered optimistic, as most such estimates are. Hastily adding a spatial index implemented by someone else might be ill advised. If the original author does not choose to maintain the code it is a big risk. I would prefer that a 2d spatial index in boost be competitively fast. Demonstrating that will be as challenging and subjective as demonstrating performance for the boolean operations. I think it would be reasonable to let a generic 2 d spatial index data structure be reviewed as a stand alone library when someone has one they feel is ready for boost.
Fair enough, if it can easily be plugged into GGL. /David