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.

Reply via email to