Right after allocators: containers or database connectivity?
Andrei Alexandrescu via Digitalmars-d
digitalmars-d at puremagic.com
Tue Jun 9 10:05:24 PDT 2015
My work on allocators takes the last turn before the straight line. I've
arranged with Dicebot to overlap the review period with finalizing
details so I can act on feedback quickly.
After that I'm ready for some major library work, and I had two things
in mind.
One would be a good pass of std.container, in particular (a) a design
review with the DbI glasses on; (b) better documentation - sadly it
seems to me so inadequate as to make containers themselves unusable; (c)
investigate use of UFCS - std.container's design predates UFCS yet is a
perfect fit for it, and most likely other cool language improvements
we've added since.
The other would be database connectivity. Erik Smith has shown some cool
ideas at DConf, and I encourage him to continue working on them, but it
seems to me this is an area where more angles mean more connectivity
options.
For database connectivity I'm thinking of using ODBC. What I see is that
on all major platforms, vendors offer mature, good quality ODBC drivers,
and most programs that have anything to do with databases offer ODBC
connectivity. So connecting with ODBC means the individual database
drivers are already there; no need to waste effort on creating drivers
for each (or asking vendors to, which we can't afford).
So I gave myself ten minutes the other night just before I went to sleep
to see if I can get an ODBC rig on my OSX machine starting from
absolutely nothing. I got http://www.odbcmanager.net but then got
confused about where to find some dumb driver (text, csv) and gave up.
Last night I gave myself another ten minutes, and lo and behold I got up
and running. Got a demo CSV driver from
http://www.actualtech.com/product_access.php (which also supports Access
and others). Then I headed to
http://www.easysoft.com/developer/languages/c/odbc_tutorial.html and was
able to run a simple ODBC application that lists the available drivers.
Nice!
It's trivial work to convert the C headers to D declarations. Then it's
straight library design to offer convenient libraries on top of the
comprehensive but pedestrian ODBC C API. Then, voilĂ - we'll have
database connectivity for all databases out there!
Please help me choose what to work on next.
Andrei
More information about the Digitalmars-d
mailing list