Redesign of dlang.org

w0rp via Digitalmars-d digitalmars-d at puremagic.com
Sun Jun 1 02:54:26 PDT 2014


On Sunday, 1 June 2014 at 03:26:30 UTC, Rikki Cattermole wrote:
> The problem with diet is it compiles directly to D code, hence 
> forth its not really possible at the moment.
> However as I believe Sonke has said previous it is out of scope 
> of Vibe. Its actually in the scope of Cmsed instead.
>
> I have looked into doing just this, reloading of templates. And 
> from what I can ascertain reliably we need shared library 
> support. While this is doable upon Linux, it isn't on Windows. 
> Until its available on Windows I will not use it.
>
> My thread on the dub forum is here[0].
> Basically I am also blocked by dub, to be able to grab all the 
> previous templates ext. From libraries and push them into a 
> findable place at runtime.

I would also consider using a different template engine entirely, 
one which is less powerful but which can be automatically 
recompiled at runtime. I would consider something with diet 
syntax, but where only some of the D language parts actually 
work. (The '-' syntax parts.)

> I personally allow for atleast 1.5 to 2gb of ram to build 
> anything with D. Cmsed base package alone takes around 700mb. 
> And thats with a LOT of CTFE work going on. I can only see that 
> increasing.
> So I'd like a way for dmd to utilize memory better even if it 
> means slowing down for larger builds. For small builds the 
> current way is great, just for larger we need alternative means.

I was thinking about this, and it might be good to offer a switch 
for lower memory build profiles. As far as I recall, I believe 
the memory usage comes from the philosophy that you can malloc, 
malloc, malloc, then exit the process for speed. I think it was 
freeing some memory and so on which would reduce build speed. I 
might be talking nonsense, but it would be nice to have an option 
to reduce build speed and also reduce memory usage. Of course, 
having the best of both worlds is always great.


More information about the Digitalmars-d mailing list