On 2016-02-14 00:32, Dicebot wrote:
Ideally ddb should be built on top of ddbc wrapping it into fiber-friendly
but I don't know if this is possible with ddbc design.
It looks like libpg has support for asynchronous calls  but ddbc does
not use them. Also, although libpg provides asynchronous calls I'm not
sure if that automatically means it will be compatible with the IO model
used by vibe.
It seems both ddb and ddbc had the same idea, building a library
accessing databases independently of the kind of database. The
difference is that ddb does not seem to have the abstraction making it
database independent and only works for Postgres. ddbc on the other hand
does support multiple databases and have the abstraction layer. So at
this point ddb is basically a Postgres driver and nothing more.
I like that ddb is completely written in D and doesn't depend on any C
libraries. It's also compatible with the IO model of vibe.
Ideally a database library would consist separate projects for the
different database drivers. These would be fully usable on their own.
The database library would build a database independent layer on top of
the drivers. Everything should be compatible with the IO model of vibe.
I would go with ddb and mysql-native for the drivers.