On Wed, 13 Apr 2011 16:00:46 -0400, Walter Bright
<[email protected]> wrote:
On 4/13/2011 11:57 AM, Steven Schveighoffer wrote:
As much as this might be a fun project, and might find bugs for D, I
have to
point out that there are *plenty* of bugs in dmd that need fixing. Any
would be
takers for this project should also consider lending a hand at fixing
existing
bugs. Then again, fixing dmd bugs might be less fun, so I could
understand if
someone preferred not to.
I think this tool would be great once dmd is fully functional.
I think it's a mistake to avoid looking for bugs since we already have
bugs to fix. We have bugzilla to keep track of them, and sure it might
take time to fix them, but at least they will be there.
I'm not saying, don't write a program to find bugs. I'm saying, if you
want to help D, a better option than trying to find bugs is to fix the
bugs we have. If all you want to do is find bugs, then I don't have any
issue with that, and welcome the additional tools. But we have a wealth
of bug finders, and few fixers. Someone who is good enough to write a
D-code-generating program might have the same skillset as it takes to work
on the compiler. I'd love for that person to spend time fixing bugs
rather than building a tool to find them :)
In other words, D doesn't *need* more bugs (though we will happily accept
more bugs in bugzilla), it needs more fixes.
I didn't mean to sound like I don't think we should promote such a tool or
that I don't like someone working on it. I just want to also bring up
that we need people to fix bugs too, and if you are talented enough and
like doing either, I think it would be more appreciated by the community
if bugs were fixed rather than generated.
Also, many people submit bug fix patches. Different people are
interested in different kinds of bugs, and having some integer math bugs
(which is what csmith finds) may appeal to a particular fixer.
I hope that a csmith-like tool will be written and that it helps more
people enjoy fixing bugs in dmd. I hope *more* that the existing const,
inout, alias this, template overload, @property, etc. bugs are fixed.
-Steve