Proposal: Database Engine for D

Rikki Cattermole via Digitalmars-d digitalmars-d at puremagic.com
Thu Dec 31 17:34:53 PST 2015


On 01/01/16 6:14 AM, Piotrek wrote:
> The goal of this post is to measure the craziness of an idea to embed a
> database engine into the D language ;)
>
> I think about a database engine which would meet my three main
> requirements:
>    - integrated with D (ranges)
>    - ACID
>    - fast
>
> Since the days when I was working on financing data SW I become allergic
> to SQL. I though that NoSQL databases would fill the bill. Unfortunately
> they didn't. And I want to have an ability to write a code like this
> without too much effort:
>
>    struct Person
>    {
>     string name;
>     string surname;
>     ubyte age;
>     Address address;
>    }
>
>   DataBase db = new DataBase("file.db");
>   auto coll = db.collection!Person("NSA.Registry");
>   auto visitationList = coll.filter!(p => p.name == "James");
>   writeln (visitationList);
>
> And other things like updating and deleting from db. I think you get my
> point.
>
> So I started a PoC project based on SQLite design:
> https://github.com/PiotrekDlang/AirLock/blob/master/docs/database/design.md#architecture
>
>
> The PoC code:
> https://github.com/PiotrekDlang/AirLock/tree/master/src/database
>
> Can you please share your thoughts and experience on the topic? Has
> anyone tried similar things?
>
> Piotrek

You've just introduced two topics.
The first is a database engine, abstracting away the drivers.
And second an ORM.


More information about the Digitalmars-d mailing list