D for microservices

Adam Wilson flyboynw at gmail.com
Wed Oct 25 22:47:15 UTC 2017


On 10/23/17 18:51, rikki cattermole wrote:
> On 23/10/2017 11:02 PM, Adam Wilson wrote:
>> On 10/23/17 05:08, Jacob Carlborg wrote:
>>> * Database drivers for the common databases (PostgreSQL, MySQL, SQLite)
>>> compatible with vibe.d
>>> * Database driver abstraction on top of the above drivers, perhaps some
>>> lightweight ORM library
>>
>> I've been looking pretty extensively at these two items recently.
>>
>> If the database drivers are compatible with Vibe.d AND we wish to
>> provide a common abstraction layer for them (presumably via Phobos)
>> then order for the abstraction layer to aware of the whether the
>> driver is making a blocking or non-blocking call we must include
>> Vibe.D in the abstraction layer. Ergo, we must include at least the
>> vibe-core package in Phobos, or more preferably, DRT.
>>
>> I had heard noises about that a few months ago. Anything happening on
>> that front?
>>
>> An event loop is a key piece of a project (Async/Await) that I want to
>> work on, and having it in DRuntime would make that project
>> fantastically simpler. IMHO, the bulk of the time required is in
>> getting an event loop into DRT, the rest is a LOT of relatively
>> straightforward compiler lowering.
>>
>> IMHO, DRT is in significant need of an event loop system. This would
>> allow us to simplify a large number of problems (Async/Await, GUI's,
>> IO, etc). As near as I can tell, the problem isn't so much doing the
>> work, but getting the required sign-off's for inclusion into DRT.
>>
>> Another problem that I've been made aware of is that vibe-core may not
>> be ideal in certain situations. As this would be landed in DRT itself
>> this would obviously need to be addressed.
>>
>> What would the appetite be for working together to come up with a
>> reasonably generic event loop for DRT that vibe and other systems
>> could then leverage?
>>
>
> *whispers* heyyy, heard about SPEW[0]?
>
> [0]
> https://github.com/Devisualization/spew/blob/master/src/base/cf/spew/event_loop/defs.d
>

You've mentioned it a few times. ;-)

-- 
Adam Wilson
IRC: LightBender
import quiet.dlang.dev;


More information about the Digitalmars-d mailing list