
I don't quite understand why you wouldn't want a DSL like MATLAB? After all, MATLAB remember is essentially FORTRAN with different horseshoes, that's why so many scientific / engineering types pick it up so fast - there is very little that's new to learn. Exactly For example,
alpha(2:10)=alpha(1:9)
Is the above MATLAB or FORTRAN? How would you express this in C++ (note the aliasing)? Perhaps
alpha(range(2,10))=alpha(range(1,9));
or some-such? How about,
NT2 v3.0 says exactly that : alpha(range(2,10))=alpha(range(1,9));
vec=mat(:,4)
(Again, is that MATLAB or is it FORTRAN?)
Presumably something like:
vec=matrix_row<matrix<double> >(mat,4); // uBlas style.
NT2 v3.0 says : vec=mat(_,4)
In my humble opinion, for C++ to really take off in next generation scientific applications (believe me I'd love to see it happen), the language should keep out of the way. Ultimately application writers just want the answer - they really don't want to have to figure out how the minutiae of template meta-programming works.
Get 'em in the door first with an easy to use intuitive interface -- once they are on board you can break out the hard stuff, then they will be hooked for life! ;-) Massive agreement here :o
-- ___________________________________________ Joel Falcou - Assistant Professor PARALL Team - LRI - Universite Paris Sud XI Tel : (+33)1 69 15 66 35