GC & IRC Server

Sean Kelly sean at invisibleduck.org
Tue Jul 27 09:06:03 PDT 2010


Mengu Wrote:

> Hi all,
> 
> I was reading an IRC server's codes which was C++ and thought how possible it was with D and started a
> discussion in the #d room in freenode. Yet I'm very confused right now. Please go ahead and read the
> logs here: http://pastie.org/1061905
> 
> Please let me know what you guys think on this issue.

Looks like wm4 is saying that false references will kill any long-running app.  That is, that because the GC is conservative it may treat some memory locations as pointers that really aren't pointers, which will in turn prevent the GC from collecting memory that has no actual references to it.  Three thoughts:

1. There's a precise scanning patch in bugzilla right now.  If applied, this should largely eliminate this issue.

2. This is only an issue for certain apps in the first place.  Something like an IRC server isn't likely to encounter this problem given the sort of data it operates on.

3. A performance-minded server app isn't going to work the GC heavily anyway.  In fact, with slices and such, D server apps of this sort don't have to use the GC at all once the initial startup routine has completed.

In short, there's nothing preventing D from being a perfect language for this sort of work.  Like anything else, what you get out of an app depends on the work you put into it.


More information about the Digitalmars-d mailing list