Boost logo

Boost :

From: Michael Tegtmeyer (tegtmeye_at_[hidden])
Date: 2007-05-29 09:46:05

> OK, I tried looking into the code...
> On 5/23/07, Michael Tegtmeyer <tegtmeye_at_[hidden]> wrote:
>> received some emails stating that there was interest. The implementation has
>> been in the sandbox for some time now. I'd like to guage interest again to
>> determine if it is worth working to add to boost.
> Are you speaking figuratively here? I couldn't find it in the boost
> sandbox. I found a version in the vault, .1.1, dated 06.07.2006. Is
> this the latest?

Yes that is the latest, it has been feature complete and in active use
here for some time. As far as I know, there are no bugs so v.1.1 is

>> The implementation is complete without any known bugs. There is only one header
>> but you can go though the normal ./configure, make, make install to put it
>> somewhere. Tests can be run using 'make check' and documentation is in the doc
>> directory.
> I tried using the .h file as-is in msvc 8.0 but got a bunch of compile
> errors on the test code provided in your e-mail. Maybe it doesn't
> make sense to do that, sorry I'm not too familiar with configure/make.
> I downsized the test code to where it did something pretty simple
> (declared a cvalarray using the default consructor and printed its
> values). Anything beyond that and errors come up.

We are heavily invested in the autotool/gcc toolchain so that is what it
has been extensivly tested on. I know that cross-tool conformance is
stressed as part of boost so since there has been some interest, it needs
to be looked at with other compilers. However, a standards complient
compiler is a must and there are no known non-standard features used. I'm
not sure of the current state of MS compiler products but I know that have
had some problems in the past. I'm digging up a copy as I write this to do
some testing.

There are lots of tests in the tests directory where all of the
functionality is tested against the installed std::valarray for
correctness. Some examples of its use can be found there. In addition
there is a pdf in the docs directory explaining the interface.

>> If anyone has any interest, I'll put together some docs and throw it in
>> the sandbox.
> I am really interested, and would definitelly use this class if it was
> made available in a boost-friendly way. Actually, I've been looking
> for something like this for quite a while :-) Your class seems to
> provide a pretty complete set of features (if I could get past the
> compile errors :-)), at least as far as what I'm interested is
> concerned.
> The only thing I would see as a convenient addition would be
> constructors and setter functions of the form
> cvalarray<float,4> v1(1, 2, 3, 4); // v1 = {1, 2, 3, 4}
> v1.set(4, 3, 2, 1); // v1 = {4, 3, 2, 1}
> defined for sufficiently small array sizes (say smaller than UNROLL_LIMIT).

As a design decision, I opted to keep the interface as close to
std::valarray as possible. I'm not against additions if they prove popular
but the initial goal was to behave in such a way that one could move from
std::valarray to cvalarray easily.

I'll report back with what I find with MSVC.


Boost list run by bdawes at, gregod at, cpdaniel at, john at