D has 22 place at the Tiobe index

Rikki Cattermole alphaglosined at gmail.com
Tue Jan 7 08:18:56 PST 2014


On Tuesday, 7 January 2014 at 15:12:45 UTC, Etienne wrote:
> On 2014-01-06 9:48 PM, Rikki Cattermole wrote:
>> On Monday, 6 January 2014 at 17:38:25 UTC, Etienne wrote:
>>> I'm working on a Framework/CMS where all controllers are in 
>>> oData so
>>> you can create desktop/mobile applications in e.g. OpenUI5 - 
>>> this
>>> allows compiling the D Language into a Desktop/Mobile 
>>> application with
>>> Javascript UI with under 4 mb.
>>>
>>> Every library e.g. Users (core) would be in oData, with the 
>>> ability to
>>> add fields and relations when loading your own library with a
>>> consistent db e.g. sqlite/mongodb. There would be oData 
>>> connectors for
>>> each db. All libraries simply add up to create the final 
>>> application
>>> with a unified database/oData object per domain services. You 
>>> could
>>> call the oData remotely, but you can also issue calls 
>>> internally to
>>> the host-local services to build a HTML frontend in vibe.d 
>>> with oData
>>> controller.
>>>
>>> There's tons of things I'm planning for this framework. It's 
>>> going to
>>> be a little like a kernel with hooks & event handlers, but 
>>> with the
>>> settings in Lua pre-runtime. API is being developed here:
>>> https://github.com/GlobecSys/w3Vibe
>>>
>>> I'm looking forward to some comments, I'm only going to plan 
>>> the
>>> structure for a few more days
>>
>> Since I wrote my original post, I have built an ORM[0] and 
>> have done
>> quite a bit of work on my own web service framework. Not 
>> currently up on
>> a repo, but its nearing ready for it.
>> By default it configures data models thanks to Dvorm, routes, 
>> has update
>> functionality (every hour or five minutes depending on the 
>> task), cache
>> manager to keeping a set data model in memory at all times.
>> I am planning on getting it up to a point where it works as a 
>> CMS out of
>> the box but also as a flexible component library.
>> I actually like the look of odata and I may at some point 
>> implement a
>> template mixin for it. That way will have full control over 
>> the routes,
>> filters ext. that go on it.
>>
>> I am having issues with getting widgits to be registered in 
>> the form of
>> I want to know where a widgit is being available for. So a 
>> route, name
>> and position. Which is hard when diet isn't designed for that. 
>> Not
>> entirely sure what to do.
>>
>> [0] https://github.com/rikkimax/Dvorm
>
> I found it more useful to include temple instead of diet 
> because there's a slight learning curve otherwise, not many 
> people know about jade which is what diet is based on.
>
> I think you can get strings as callbacks through temple and 
> pass it to other templates and include it with <%=string %>, 
> look at the MemoryOutputStream in vibe.
>
> I needed the Scheme and QueryBuilder of HibernateD for OData, 
> because the URI includes part of the query but it needs 
> completion like this:
>
> http://example.com/odata.svc/Users(1)/Role/$view
>
> would be written as:
>
>     parser = new QueryParser(schema, "FROM Role WHERE users.id 
> = 1");
>     q = parser.makeSQL(dialect);
> //    writeln(q.hql);
> //    writeln(q.sql);
>     assert(q.sql == "SELECT _t1.id, _t1.name FROM role AS _t1 
> LEFT JOIN role_users AS _t1_t2 ON _t1.id=_t1_t2.role_fk LEFT 
> JOIN users AS _t2 ON _t1_t2.user_fk=_t2.id WHERE _t2.id = 1");
>
> It would be great if Dvorm did this for BSON as well

Dvorm already has most of the query support added :) Note 
.query() [0] although from what I can tell orderby would be 
needed. Also some sort of relationship for properties to models.

[0] https://github.com/rikkimax/Dvorm/blob/master/src/orm/query.d


More information about the Digitalmars-d mailing list