« Return to Thread: [scala] unexpectedly abrupt end for such an innocent mistake

Re: [scala] unexpectedly abrupt end for such an innocent mistake

by Paul Phillips-3 :: Rate this Message:

Reply to Author | View in Thread

On Fri, Jun 26, 2009 at 03:13:01PM -0700, Raoul Duke wrote:
> * scala needs a tighter development proces
> * scala is happening too fast
> * scala is insufficiently staffed
> * software is just plain hard
> * all us whiners should be assigned one bug to fix a week.

All open source projects are insufficiently staffed, so that one is
safe.  Learning the compiler well enough to fix even simple-ish bugs
took me months, so the barrier to entry is high.  It's very difficult to
be sure a bug fix hasn't broken something else without rebuilding and
running the whole test suite.  Very slight changes in a trait can force
rebuilding many files because of the extensive interdependencies, and
the ant-based build system has no intelligence at all so you're on your
own if you want to do anything less than a total clean.

In summary, there are a lot of little things that conspire together to
make it a very slow process.  And, fixing bugs is pretty much as unsexy
as it gets, so you have to be really into it for its own sake on top of
everything else.  I probably now know approximately how to fix every bug
in the database except those revolving around some abstruse aspect of
the type system, but even if I worked on bugs full time, they're opening
faster than I can close them.

Fortunately most of them do things like crash the compiler, or fail to
infer the type when you think they should, or involve other behaviors
which though annoying should not be deal breakers.  Scala is still very
useful, but it could be a lot more robust at the edges.

I won't say development is happening too fast, but it's true that having
a bunch of huge patches land on trunk makes life interesting.  We don't
need lots of people trying to fix one bug a week -- we need a very small
number of people to invest the time and effort necessary to learn the
compiler, and then for them to fix a few bugs a day.

(Anyone out there with nothing to do for the next year or so, who needs
no paycheck and enjoys closing tickets? Opportunities abound!)

--
Paul Phillips      | It's not enough to bash in heads - you've got to
Apatheist          | bash in minds.
Empiricist         |     -- Capt Hammer
all hip pupils!    |----------* http://www.improving.org/paulp/ *----------

 « Return to Thread: [scala] unexpectedly abrupt end for such an innocent mistake