On Tuesday, 18 August 2015 at 21:36:39 UTC, Walter Bright wrote:
On 8/18/2015 2:26 PM, rsw0x wrote:
if you want to make D fast - Fix the interface between the compiler and the runtime(including the inability for compilers to inline simple things like allocations which makes allocations have massive overheads.) Then, fix the GC. Make the GC both shared and immutable aware, then moving the GC to a thread
local "island"-style GC would be fairly easy.

The fundamental issue of island GCs is what to do with casting of data from one island to another.

If you want D to have a GC, you have to design the language around having a GC. Right now, D could be likened to using C++ with Boehm. Something needs done with shared to fix this problem, but everything I could suggest would probably be deemed entirely too big of a change(e.g, making casting to/from shared undefined, and putting methods in the GC API to explicitly move memory between heaps)



Maybe you should take a look at what Go has recently done with their GC to get
an idea of what D's competition has been up to.
https://talks.golang.org/2015/go-gc.pdf

"you"? There's a whole community here, we're all in this together. Pull requests are welcome.

How many people here do you think know the intricacies of dmd as well as you do? At most, a handful and I'm certainly not one of those people.

Reply via email to