Am 11.03.2013 16:23, schrieb Daniel Murphy:
"dennis luehring" <dl.so...@gmx.net> wrote in message
news:khkqug$v57$1...@digitalmars.com...
Am 11.03.2013 15:20, schrieb Daniel Murphy:
"Daniel Murphy" <yebbl...@nospamgmail.com> wrote in message
news:khfoa6$fm7$1...@digitalmars.com...
"Daniel Murphy" <yebbl...@nospamgmail.com> wrote in message
news:kgumek$2tp4$1...@digitalmars.com...
"Zach the Mystic" <reachbutminusthisz...@googlymail.com> wrote in
message
news:pabfuaorrjbljxzrg...@forum.dlang.org...
Something like this https://github.com/yebblies/magicport2 ?
Yes! I need to look it over more thoroughly, but I couldn't ask for a
better beginning. Can I trust that you'll be a willing part of future
discussions on this matter, even if only to play Devil's Advocate?
More like a full-blown attempt than a beginning. I started this a long
time ago.
There are three parts to it:
- c++ parser/d printer, with lots of cheating and special cases
- patches to the c++ source
- patched version of dmd to build the result (no error on variable
shadowing etc)
It produces a 70000 line d file which appears to get through 3/7ths of
semantic1. Root needs to be ported, and a cleaner interface to the
backend is needed to compile the glue layer.
Update: With the bulk of root converting or ported, and the glue layer
stubbed out, I can build dmd from the converted source then lex and
parse
the source (+druntime headers) again.
The highlight was the dynamically resized struct in root/stringtable.
Something went horribly wrong there.
Update: I can now generate the source, then build a frontend from that,
then
process the frontend's source again with the built compiler. It also
works
on the conversion tool, and pulls in a sizeable chunk of druntime and
phobos.
do i get it right - you've converted the dmd C++ code with it?
Umm...
C++ compiler source -> my tool -> D source
D source -> normal dmd -> self-host dmd
D source -> self-host dmd -> no problems, but only the frontend so no code
generation
tool source -> self-host dmd -> same thing
but interesting enough to get its own root newsgroup post i think - or
it the "quality"(converted source etc. whatever) too bad