On Tue, Jul 26, 2016 at 7:54 AM, Sönke Ludwig <digitalmars-d-announce@puremagic.com> wrote:
Am 26.07.2016 um 05:22 schrieb Puming:
On Monday, 25 July 2016 at 09:29:38 UTC, Sönke Ludwig wrote:
The Diet template language is aimed at providing a way to define
procedurally generated HTML/XML pages (or other output formats), with
minimal visual noise. Syntax and feature set are heavily inspired by
Jade <http://jade-lang.org/>, but instead of JavaScript, all
expressions and statements are D statements, and everything that can
be done at compile-time is done at compile-time.

[...]

A feature I want the most for Diet is the ability to parse Diet
templates at RUNTIME instead of compile time with a switch, similar to
Regex/CtRegex.

In this way one can do quick turnarounds in dev mode, tweaking little
corners of the pages, and then when a page is finished, it can be
switched to compile mode for faster render time.

Do you think this is feasible?

A real runtime solution would require a D runtime interpreter or JIT compiler. There would be an alternative solution based on compiling each template to a shared library and then dynamically recompiling/reloading those as required, but that currently doesn't work due to the alias parameter based interface of render!(...).

However, what should work well is a combination of https://github.com/dlang/dub/pull/446 and https://github.com/rejectedsoftware/vibe.d/pull/1385 - I'll merge the latter one into vibe.d master today. It will require to store session information and similar things in an external store, and on Linux the Gold linker should be used for speed, but then it should be almost as good as a runtime solution.

!! nice, this is going to make my work life so much easier.

Thanks Sönke!