On 2011-10-07 04:56, Piotr Szturmaj wrote:
Nick Sabalausky wrote:
"Andrei Alexandrescu"<seewebsiteforem...@erdani.org> wrote in message
news:j6ljvs$1if5$1...@digitalmars.com...
For D in particular, I think the range aspect is secondary. Probably it
will be more important to interoperate with Variant. Most APIs store
columns in a Variant structure that captures all possible types of the
database.
Resultsets come as input ranges of array of Variant. It's not
important to
make them compatible with the input range interface because it's
unlikely
you'll pass that array of Variant directly to some algorithm. That being
said, people will naturally expect to use the canonical range interface.
It would probably be gratuitous to choose other primitive(s) than
empty/front/popFront.
Personally, I would *expect* a good DB API to provide statically-typed
columns. I use D because I hate dynamic typing, not because it provides a
Variant. Whether or not the DB API *also* has messy^H^H^H^H^HVariant
capability for those who want it, I wouldn't care at all either way.
What do you think about ddb(http://pszturmaj.github.com/ddb/db.html) ?.
It provides statically typed columns or dynamic Variant columns. What
you want is what you get :)
I think it's important to have a solid low level database API which an
object oriented abstraction can be built upon.
--
/Jacob Carlborg