On Tuesday, 10 June 2014 at 10:42:14 UTC, Sönke Ludwig wrote:
Am 10.06.2014 12:25, schrieb w0rp:
On Tuesday, 10 June 2014 at 08:12:53 UTC, Sönke Ludwig wrote:
It's not heap allocations. The problem is that during CTFE,
currently
basically every variable change allocates memory that is
never freed
again. I've used a few tricks to get the memory usage down
(which is
why the Diet compiler source code doesn't look very pretty),
but
basically the only way to get reasonable memory use is to fix
the D
front end.
Indeed, this is a front end issue. I'm considering switching
to markdown
files loaded at runtime for many pages. So I can create only a
few diet
templates for basic layout, two column, generic changelog
template, etc,
and then load Markdown content at runtime and parse Markdown
for
generating the table of contents automatically.
If you go down the Markdown route*, let's extend the
vibe.textfilter.markdown module to output structural
information. Writing a Markdown parser in a way that doesn't
use a cascade of regex patterns is definitely nothing I'd
recommend anyone to try to do, unless absolutely necessary -
it's awful.
* Are there any other opinions on this? I remember that there
have been some strong proponents of using DDOC for things, so
it would be bad if in the end Markdown were to be dropped,
after all of the work has already been done. Personally I'd
strongly favor Markdown, though.
Definitely support Markdown.
DDoc is extremely discouraging/making bad first impression on
newbies, especially for people who want to write web content.
(But I'd recommend extended GitHub-like markdown if possible,
plain markdown is pretty bare bones. Personally I use
ReStructuredText but I think the GitHub markdown is pretty good
and most potential contributors can already write it without
learning a new format.