Splitting std.algorithm
Zach the Mystic via Digitalmars-d
digitalmars-d at puremagic.com
Thu Jan 22 10:04:32 PST 2015
On Thursday, 22 January 2015 at 12:04:43 UTC, Steven
Schveighoffer wrote:
> It's not just old PCs. I had to up my vmware linux image's
> memory from 1GB to 2GB just to compile the default vibe.d
> program. This is unacceptable. I rent a VPS with minimum
> memory, and I have to compile vibe.d locally because any
> compiling of it on that system will crash the server.
>
> Fast compilation is great to a point, but if your system can't
> even compile, time taken goes to infinity. I think there has
> been too much emphasis on dmd compilation speed.
>
> -Steve
Sometimes it seems to me that condensing some of dmd's data
structures could be an overall win. I guess the downside would be
that it makes reading dmd's code harder. For example, a Loc has a
pointer to a file string, a line number and a character position
number. On a 64-bit program, that's the same 64-bit pointer over
and over for every token. It could instead be a 32-bit unique
integer bumped up at every new Loc, pointing to a binary tree
which calculates the file string as the greatest position <= the
current Loc number.
Also, packing some of the booleans and small integers more
tightly, of course. I dunno, might be too hard to do when so many
data structures are in flux and negatively affects code
readability.
More information about the Digitalmars-d
mailing list