Download Reference Manual
The Developer's Library for D
About Wiki Forums Source Search Contact

Ticket #175 (assigned wishlist)

Opened 2 years ago

Last modified 2 years ago

DeRailed -- RubyOnRails for D

Reported by: kris Assigned to: kris (accepted)
Priority: normal Milestone: 2.0
Component: Packaging Version:
Keywords: Cc:

Description

We're almost at the stage where it's possible to construct an equivalent of RubyOnRails? for D. IMO, this is *the* killer app for D -- how about we get a group together to investigate? Eric? You up for this? Who else? Add your names below :)

We'll need a solid DB interface, dynamic page builder, web-server and, most of all, a means to dynamically change the db-schema (as pages are changed). What do you think?

Change History

01/11/07 23:29:54 changed by pragma

Great name! Why didn't I think of that?!

It's funny you bring this up Kris. I already decided to re-kindle DSP on Tango after it is released. I'd be happy to fold it in if this sub-project gets off the ground.

My first contribution will be getting DDL, along with ELF support, over to Tango.

I have some notes on page generation over the past few years in the DSP forum, along with my most recent observation of the separation of template engines and the underlying support framework: http://www.dsource.org/forums/viewtopic.php?p=12133#12133

Aside from what I had in mind with DSP, I think that any templating solution should ultimately be optional/pluggable. If folks want to build apps using raw D, they should be able to do that easily.

The web server portion is almost completely outlined by Mango. As long as we have a way to hot-plug in servlets, via DDL or other methods (mini-D and DLisp come to mind) I'm happy. Also, Kris, your earlier work with clustering will come to play here too (doing a distributed session state correctly is usually a weakpoint in other architectures).

Other than that, I think that folding DDBI, with gobs of improvments, into Tango is a must. It's already flexible enough - datasource management isn't nearly as much of a problem as say connection pooling, transaction management and how those interact with exception handling.

Stack traces are going to be ever-so-important here too. Another killer feature here is the possibility to devise the world's first web-platform with a side-channel debugger (read: how do you develop/debug software on a server located at a $5/month hosting service). ;)

The only other "got to have" items I can think of are at the servlet framework and up from there - the real "rails" part of "DeRailed". I can lend my expertise to help steer us clear of the pitfalls present in other frameworks and web-languages. Overall, I feel that the whole mess should adhere to KISS at all times, and leverage D's native strengths and what Tango + extra libs can bring to the table. We already have a powerful setup, so there's no need for Byzantine architectures.

Other than that, can we get a Wiki page going as a workspace for this?

03/02/07 19:07:32 changed by kris

  • priority changed from major to normal.
  • status changed from new to assigned.
  • version deleted.
  • type changed from enhancement to wishlist.