
Hi Brandon, I wouldn't have said better than Luke.What you are trying to do is what we are all trying to do. Even though consensus is very difficult to reach in that domain as Paul pointed out, it is wrong to say that nothing has emerged from all the discussions that have occurred. The fact that a C++ geometry library is definitely not all about providing a point class, but proposing a set of algorithms generically adaptable to any kind of point, is one of those consensuses. Another one is that point coordinates selection should be made at compile-time (get<0>(p), not get(0, p)), and be dimension-agnostic (get<0>, not get_x). Barend's library wasn't made that way initially. It is now, even if there remain some ways to acquire even more genericity. Points are now handled generically (even a C-style array can be a point), linestrings are now pairs of iterators, etc... And everything has been made dimension-agnostic. If I took a while to look at your library, it's obviously not for lack of interest, but for lack of time. I finally glanced through it, it sounds well written, well designed and clean to me. And like Luke said, very similar to what we already have in terms of design, which is very encouraging indeed. To the extent that at some places of your files, I couldn't say directly if I'm browsing your library or Barend's one :-) Everything is about coordinate_type, point_traits, access_traits and stuff like that, which is absolutely normal. So we shouldn't have troubles working together. We are still working on cleaning everything and preparing the next preview of Barend's library, it should come very soon. Regards Bruno