critique of vibe.d
Etienne via Digitalmars-d
digitalmars-d at puremagic.com
Wed Jul 9 12:45:42 PDT 2014
On 2014-07-08 9:32 PM, Puming wrote:
> Also, in playframework, vert.x and nodejs, they all have a plugin/module
> system, that people could easily compose plugins to make a website. (I
> call it plugin because that is what play used to call it, now they all
> call it a module but that name will easily conflict with D's sourcecode
> modules). This is a critical mechanism that actually allured developers
> to contribute to the eco-system.
This is phenomenal work from my perspective because it needs to be
original to justify the move. However, I was too tempted by the
functional nature of D and my imagination motivated me to build the
technicalities for some huge infrastructures behind a next-gen CMS.
I have a chart up at https://github.com/globecsys/spee.d about what's
involved with it, on my schedule for all components there should be at
least 300 hours of work left.
I'm aiming for a standalone executable library-oriented framework, which
would give a cross-platform wordpress-like CMS installation that
technically should scale _infinitely_. There's a few issues with
infinite scalability behind NAT firewall nodes, like
- the solution would be a websocket communication with (http://wamp.ws/)
a more advanced protocol is elementary.
- a cache database (I have a local redis-like one up called cache.d)
needs to "talk" to hash-distributed master DBs with replication
- this cache database would be modified to take advantage of the GC to
avoid making additional copies on a server (store some void* in memory,
serialized data on the filesystem).
- library support would be with the same interface as wordpress:
add_filter, add_action, etc - but a focus on Backbone.marionette for
front-end js-based structuring with REST/json backend data provider
- a custom D-based TLS library would help maximize code inlining in the
streams and minimize points of attack
- a DER and length-value serialization library would help minimize
boilerplate
I'm still brainstorming on the geolocation and domain-clustering of
master nodes and load balancing.
I'm finishing up work on a completely generic ASN.1 compiler with
support for Information Objects that generates D structures for TLS:
https://github.com/globecsys/asn1.d
This is necessary because there's over 7000 lines of structure
definitions involved:
https://github.com/globecsys/asn1.d/blob/master/tls.asn1
Anyways, enough typing about this for the moment, I'm not looking for
help :)
More information about the Digitalmars-d
mailing list