Thread overview | |||||||
---|---|---|---|---|---|---|---|
|
April 15, 2014 Re: sqlite-statement CTFE Generation (UniformAccess) / Benchmark | ||||
---|---|---|---|---|
| ||||
Attachments:
| I was contemplating why languages explode on to the scene or not, and often it comes down to a so called "Killer App". For Ruby, it was Rails. The ability to construct optimally fast typesafe tuples in D perfectly matches the requirements of database management to a degree unmatched by any other language. I have long thought D, strangely enough, may be the perfect language in which to implement... D :-) http://en.wikipedia.org/wiki/D_%28data_language_specification%29 On Wed, Apr 16, 2014 at 3:51 AM, Robert Schadek <realburner@gmx.de> wrote: > Lately I had to write some sqlite3 code in D. And I really hated writing it. So I wrote me some CTFE generator for it. It uses all the fun UDA, CTFE string mixin template magic, we all love. The generated code is as fast as the hand written one. I wrote some of it down. http://rburners.tumblr.com/ The article also holds a link to the source/benchmark. Maybe this is to some interest to other people as well. > > Best Regards > Robert > > p.s. PRs and corrections welcome > -- John Carter Phone : (64)(3) 358 6639 Tait Electronics PO Box 1645 Christchurch New Zealand -- ------------------------------ This email, including any attachments, is only for the intended recipient. It is subject to copyright, is confidential and may be the subject of legal or other privilege, none of which is waived or lost by reason of this transmission. If you are not an intended recipient, you may not use, disseminate, distribute or reproduce such email, any attachments, or any part thereof. If you have received a message in error, please notify the sender immediately and erase all copies of the message and any attachments. Unfortunately, we cannot warrant that the email has not been altered or corrupted during transmission nor can we guarantee that any email or any attachments are free from computer viruses or other conditions which may damage or interfere with recipient data, hardware or software. The recipient relies upon its own procedures and assumes all risk of use and of opening any attachments. ------------------------------ |
April 16, 2014 Re: sqlite-statement CTFE Generation (UniformAccess) / Benchmark | ||||
---|---|---|---|---|
| ||||
Posted in reply to John Carter |
You may be on to something here.
On Tuesday, 15 April 2014 at 22:27:53 UTC, John Carter wrote:
> I was contemplating why languages explode on to the scene or not, and often
> it comes down to a so called "Killer App".
>
> For Ruby, it was Rails.
>
> The ability to construct optimally fast typesafe tuples in D perfectly
> matches the requirements of database management to a degree unmatched by
> any other language.
>
> I have long thought D, strangely enough, may be the perfect language in
> which to implement... D :-)
> http://en.wikipedia.org/wiki/D_%28data_language_specification%29
>
>
> On Wed, Apr 16, 2014 at 3:51 AM, Robert Schadek <realburner@gmx.de> wrote:
>
>> Lately I had to write some sqlite3 code in D. And I really hated writing
>> it. So I wrote me some CTFE generator for it. It uses all the fun UDA,
>> CTFE string mixin template magic, we all love. The generated code is as
>> fast as the hand written one. I wrote some of it down.
>> http://rburners.tumblr.com/ The article also holds a link to the
>> source/benchmark. Maybe this is to some interest to other people as well.
>>
>> Best Regards
>> Robert
>>
>> p.s. PRs and corrections welcome
|
April 16, 2014 Re: sqlite-statement CTFE Generation (UniformAccess) / Benchmark | ||||
---|---|---|---|---|
| ||||
Posted in reply to justme | On 04/16/2014 01:55 PM, justme wrote:
>
> You may be on to something here.
Maybe I should create a wanted feature list and get started. Any feature you would like to see?
|
April 16, 2014 Re: sqlite-statement CTFE Generation (UniformAccess) / Benchmark | ||||
---|---|---|---|---|
| ||||
Attachments:
| I guess the place I'd start is with what CJ Date has been saying about "Tutorial D" and how much you can rephrase into D. In someways it's a very orthogonal concept, we tend to think of databases as "places where we store data". What Date is saying is, no, they are collections of predicates and an algebra for doing quantified logic operations on the them. The critical idea behind "algebra" is closure. You operate on relations (tables in SQL speak) and the result is a relation which you can use in further operations. In D, that concept is almost trivial. It has taken SQL ages to come up with half-assed things like views and temp tables and sub-selects. On Thu, Apr 17, 2014 at 1:03 AM, Robert Schadek <realburner@gmx.de> wrote: > On 04/16/2014 01:55 PM, justme wrote: > > > > You may be on to something here. > Maybe I should create a wanted feature list and get started. Any feature you would like to see? > -- John Carter Phone : (64)(3) 358 6639 Tait Electronics PO Box 1645 Christchurch New Zealand -- ------------------------------ This email, including any attachments, is only for the intended recipient. It is subject to copyright, is confidential and may be the subject of legal or other privilege, none of which is waived or lost by reason of this transmission. If you are not an intended recipient, you may not use, disseminate, distribute or reproduce such email, any attachments, or any part thereof. If you have received a message in error, please notify the sender immediately and erase all copies of the message and any attachments. Unfortunately, we cannot warrant that the email has not been altered or corrupted during transmission nor can we guarantee that any email or any attachments are free from computer viruses or other conditions which may damage or interfere with recipient data, hardware or software. The recipient relies upon its own procedures and assumes all risk of use and of opening any attachments. ------------------------------ |
April 23, 2014 Re: sqlite-statement CTFE Generation (UniformAccess) / Benchmark | ||||
---|---|---|---|---|
| ||||
Posted in reply to John Carter | Yeah, implementing TutorialD came to my mind as well. However I would like to have a storage engine for it too so I gave up, it is too much work and I barely have time to do something outside my work...
On Tuesday, 15 April 2014 at 22:27:53 UTC, John Carter wrote:
> I was contemplating why languages explode on to the scene or not, and often
> it comes down to a so called "Killer App".
>
> For Ruby, it was Rails.
>
> The ability to construct optimally fast typesafe tuples in D perfectly
> matches the requirements of database management to a degree unmatched by
> any other language.
>
> I have long thought D, strangely enough, may be the perfect language in
> which to implement... D :-)
> http://en.wikipedia.org/wiki/D_%28data_language_specification%29
>
>
> On Wed, Apr 16, 2014 at 3:51 AM, Robert Schadek <realburner@gmx.de> wrote:
>
>> Lately I had to write some sqlite3 code in D. And I really hated writing
>> it. So I wrote me some CTFE generator for it. It uses all the fun UDA,
>> CTFE string mixin template magic, we all love. The generated code is as
>> fast as the hand written one. I wrote some of it down.
>> http://rburners.tumblr.com/ The article also holds a link to the
>> source/benchmark. Maybe this is to some interest to other people as well.
>>
>> Best Regards
>> Robert
>>
>> p.s. PRs and corrections welcome
|
Copyright © 1999-2021 by the D Language Foundation