On Nov 22, 2010, at 3:43 PM, Roy Stogner wrote:

> I'd originally planned on writing a SharedPtr wrapper that would hook
> to C++0x or to optional boost or to an internal fallback... but maybe
> it's time to bite the bullet and just introduce boost as a libMesh
> dependency?  Other opinions would be appreciated.

We were actually looking at this a few weeks ago when we needed a specific 
sorting algorithm that they have in boost.  What did we finally decide?  We 
rewrote the sorting algorithm.

Why did we do that?  Because it was simpler to rewrite the algorithm (only like 
10 lines of code) than it was to deal with the hundreds (yes really!  We 
actually ran the compiler and had it generate the dependencies so we could see 
just how much of Boost we would need to pull in so we could have that sorting 
algorithm) of header file dependencies that would have been pulled in!

Personally, I'm not a fan of Boost.  Sometimes it provides well modularized 
useful functionality... but more often it seems as if it's a computer science 
project that can't possibly be understood by any normal human (yes, Roy, that 
_does_ mean that you're not a _normal_ human ;-).

At any rate... this isn't a vote against having it be a dependency.... just a 
cautionary tale about Boost in general.

How would we handle the dependency?  Would you copy all of Boost (which is a 
lot) into /contrib?  Or would you make the user put it on their system 
somewhere?  I really don't like the latter idea... I've always thought it was 
cool that you could checkout and build libMesh without any dependencies at all 
(if you just want to do serial solves on one CPU).... we should think pretty 
hard about this before we make that plunge.

Derek
------------------------------------------------------------------------------
Increase Visibility of Your 3D Game App & Earn a Chance To Win $500!
Tap into the largest installed PC base & get more eyes on your game by
optimizing for Intel(R) Graphics Technology. Get started today with the
Intel(R) Software Partner Program. Five $500 cash prizes are up for grabs.
http://p.sf.net/sfu/intelisp-dev2dev
_______________________________________________
Libmesh-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/libmesh-devel

Reply via email to