
Paul A. Bristow wrote:
This is a really good idea - but can appear (and be!) quite complicated - if you want an example of policies and their use, you might like to look at the documentation (and the source code later) of John Maddock's Boost Math Toolkit I do something similar. In NT2, the target audience is matlab user with few to no "computer knowledge". So when you go :
matrix<> m; it's a real matlab matrix (2D, contiguous, using double, column first storage). Then you discover you need somethign else, liek using float and have a static storage : matrix<flaot, settings( storage<static_>::OfSize<25,25> ) > m; then a computer savvy guy told you that you're better use dynamic one and turn on unrolling : matrix<float, settings( unroll<8> ) > m; etc ... There is something like 12 policies famillies, all with meaningful default. So the less you know, the less you care.But if you need something, the option is here. Then matrix class is a mere mepty shell that contains a NRC array and tons of meta-functiosn to build itself accrodingly to the policies. -- ___________________________________________ Joel Falcou - Assistant Professor PARALL Team - LRI - Universite Paris Sud XI Tel : (+33)1 69 15 66 35