On Sunday, 26 July 2015 at 00:46:58 UTC, Etienne Cimon wrote:
On 2015-07-25 18:47, Brandon Ragland wrote:
Hi All,
Not entirely certain if there is a decent D web applications
server
implementation as of yet, but if there is a project going on,
I'd love
to have a gander.
On the off-chance there isn't one, who would be interested in
going at
it, call it, a 'group' project.
I've been yearning for a D web app server for a while, as most
of my day
to day work is done on Java EE containers (think Glassfish,
Weblogic,
etc. Java Beans, lalala) and the insane system usage has
bothered me
from day one.
There's Wt for C++, although I don't see much coming from
that, though
the concept is grand. Rust has a few up and coming web server
frameworks
as well.
D could really excel here.
-Thoughts? Am I crazy (probably)?
Not crazy. I've been working towards exactly that as hard I
could (see on https://github.com/etcimon/), seeing how D would
be the best language to write any web backend with. I've since
worked on writing all the architecture in D: a new TLS library
Botan, along with libhttp2 for HTTP/2 support and an async
event loop (TCP/UDP/FileSystem/FileWatcher/DNS/Timers) library.
I've written all the "glue" code to have it in the vibe.d
framework and tested it as thoroughly as I could. I now
consider it an achievement and use it in my web applications.
I'm currently concentrating on improving an async postgresql
driver called DDB and adding transactions, Json, TLS,
Listen/Notify, etc.
I think my next priority would be to rewrite the back-end of
http://www.cosmocms.org with D and the vibe.web.web Web
Interface, and Redis+Postgresql (sessions in redis). It's about
4k-5k LOC
I think a good and necessary library would be for
cross-platform, async DNS. I've been looking at this one in
particular: https://github.com/miekg/dns
In relation to DDB: Have you seen: https://github.com/buggins/ddbc
It's most similar to the JDBC driver in Java. Currently supports
MySQL, PostgreSQL and SQLite. That might be a good starting point
to expand the SQL driver support for a web framework.
I dug around some of your repos, too early to comment but I'll
sift through more of it as time allows, see if I can't offer
anything towards your current goals in the near future.
I fully agree that D would be a great fit for web development.
Thanks for the reply.