[Seqan-dev] C++11 features
Hi everyone,
I wanted to ask what the state of C++11 features in SeqAn is. The
homepage mentions C++98, but in the medium term something like SeqAn
would obviously benefit significantly from the new features.
And considiering that the Debian stable computers at the institute
already support many features relevant to SeqAn, wide-spread support
doesn't seem to be too far off.
Is there some sort of timeline or migration plan? Is there e.g. a macro
that I could enclose code with that requires C++11 features?
This would permit adding new features and new code that already works
with C++11 without having to bump the general requirement of the
library. Ultimately the transition would be smoother, because not all
existing code would have to migrated at once and new library features
could already build on new C++ features.
The resaon I am asking is that I am currently working on
Blast-statistics and Blast-IO for the library. All basic features are of
course C++98, but some stuff simply isn't viable without C++11 -- or at
least it isn't viable to do, when C++11 support will come sooner or
later anyway. One such example is the feature in Blast-IO to have the
programmer specifiy the amount (and type) of output columns in tabuler
format. I have implemented this through Variadic Templates, which can be
done with easily readable and reusable code -- without Variadic
Templates on the other hand one would have to define n functions for 1
to n parameters or use some obscure form of linked or nested templates...
Thanks,
Hannes