Boost logo

Boost :

From: David Abrahams (dave_at_[hidden])
Date: 2003-02-01 12:16:34


"Arkadiy Vertleyb" <vertleyb_at_[hidden]> writes:

> Yes, we are currently working on such a database. Our library uses
> template meta-programming to enable creation of relational tables capable of
> storing ANY type of data in their fields. The only requirements to the type
> is the same as an STL container would impose. We also provide a full set of
> relational algebra operators on these tables. We also support range queries
> based on the sort order, and indexing to control this sort order.
>
> At this point the library can be used with either MSVC6 or g++.
>
> Here is the link:
>
> http://groups.yahoo.com/group/boost/files/tables.zip
>
> We look forward to any feedback.

At a first glance, I have two remarks:

The first is trivial: your #include guards are all symbols reserved to
the C++ implementation. No double underscores, please! They're also
not very unique. I use my initials and the date to help avoid
collisions:

Instead of __JOIN__, I'd use something like JOIN_HPP_DWA20030128.

The second is nontrivial: I think you could probably simplify your
code a lot and increase portability at the same time by making better
use of Boost components, primarily MPL and iterator adaptors.

-- 
                       David Abrahams
   dave_at_[hidden] * http://www.boost-consulting.com
Boost support, enhancements, training, and commercial distribution

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk