On Thursday, 25 February 2016 at 02:58:08 UTC, Walter Bright
wrote:
On 2/18/2016 11:54 AM, David Nadlinger wrote:
But imagine that Walter
would have invested all the time he spent e.g. on implementing
DWARF EH into
optimizing the LDC frontend/glue layer/backend pass structure
instead. Who
knows, we might have an LDC-based compiler today that is
faster than the DMD we
currently have.
A big chunk of that was getting D to catch C++ exceptions. And
before I did this work, neither GDC nor LDC did, either. It's
not a simple matter of just turning it on given Dwarf EH.
The point being, a lot of things are not going to happen for D
unless I do them. Many of these require changing the front end,
back end, and the runtime library in concert. It's a lot easier
to make these work when the person working on it understands
how all three work.
Once they're done, they provide a good guide on how to get it
to work with a monumental code base like the gdc and ldc
backends are.
That's a good argument for keeping your backend. I also like
that it will be in D one day, meaning a completely bootstrapped D
compiler. :)
It would help if you weren't doing other stuff that others could
also do, as you've complained about. You should keep a list of
tasks online, ones you consider important but that others could
reasonably do. That would give them an avenue to take stuff off
your plate, freeing you up to work on what you do best.