my objection is partly due to this. as Gosling said,
Java is easier to read. it's a great virtue for a
language to be easier to read. for a language with
type inference, however, implicit defs could very well
invite stupid bugs (it reads like something but does
something else).
One of the great strengths with Java was always its simplicity and
readibility. Dumb people (e.g. me) could pick it up and run with it without
needing to dig into the language too far. There's a diffference between
'dumbing down' and simplicity. Simplicity means that things work out of the
box intuitively. Everything hangs together nicely without hidden surprises.
Making things simple is hard work and needs intelligence and feel. And
sometimes that does mean sacrificing some of the power. But simplicity
should come first if a language is going to go mainstream.
I think that's the great opportunity for Scala right now, to take a quantum
leap beyond Java while retaining the simplicity that Java's fast losing.