D2 port of Sociomantic CDGC available for early experiments

Dmitry Olshansky via Digitalmars-d-announce digitalmars-d-announce at puremagic.com
Tue Oct 7 00:45:22 PDT 2014


06-Oct-2014 20:51, Dicebot пишет:
> https://github.com/D-Programming-Language/druntime/pull/985
>
> Here is initial port result available for early experiments. It can be
> compiled with make -f posix.mak GC_TYPE=concurrent and passes the test
> suite with only shared library tests disabled (ef20b7a).
>

Awesome!

> There are still many issues to be aware of:
> 1) Documentation is largely missing. Working on it, reading
> @leandro-lucarella-sociomantic old posts
> (http://www.llucax.com.ar/blog/blog/tag/understanding%20the%20current%20gc)
> may help in the meanwhile
> 2) Code style differs from Phobos standards. To be fixed soon.


> 3) Shared library support is completely missing. Proxy infrastructure
> similar to one in existing gc needs to be added and I don't know if
> actual implementation will work in such environments or more changes
> will be needed.

Never used that anyway ;)

> 4) Deadlock issue (http://www.dsource.org/projects/tango/ticket/2087)
> still remains. It is not critical to our code because it almost never
> uses threads so no big effort was put into it but this can be huge
> problem for any other project.

Just use different LIBC ? For instance, try Musl:
http://www.musl-libc.org/

(Binaries linked statically with Musl can co-exist with GLIBC-based OS 
just fine)

I might try CDGC+musl sometime soonish anyway, but just letting this 
idea out in case you are interested.

>
> In general this is very far from something that can be merged upstream
> straight away and replace default GC on linux. It can be interesting for
> other projects with similar architecture and requirements and probably
> helpful for anyone else working on better D GC.
>
> And contributions are welcome via pull requests towards this PR base
> branch
> (https://github.com/mihails-strasuns-sociomantic/druntime-1/tree/sociomantic-cdgc-wip)
> or as e-mail patches (public at dicebot.lv)


-- 
Dmitry Olshansky


More information about the Digitalmars-d-announce mailing list