Re: switch using strings
On Thu, 24 Feb 2011, Joshua Cranmer wrote:
On 02/24/2011 03:57 PM, Tom Anderson wrote:
my hypothetical class switch
The real answer to a switch-based-on-class, I think, would be double
dispatch.
Yes, i'd agree with that.
However, Java doesn't really support double dispatch, and I'm not sure
whether or not it should.
I wouldn't say it's a high priority. I think i'd rather have it than not,
though, provided it wasn't the default - i would like method resolution to
use static parameter types, as it does now, unless i ask for double
dispatch. I had been hoping we'd get it as a free bonus from the
invokedynamic work, but evidently not.
In the absence of double dispatch (multiple dispatch, really, since
methods can have more than one parameter), i think a classy switch would
be handy from time to time.
It's mostly a contrived example. I mean, we do actually have some logic
almost exactly like that, but we recognise it's a mistake and are
working on getting rid of it!
I'll grant you that it is a contrived example, but one would hope that a
contrived example would be more persuasive in explaining why a feature
would be useful...
Er, well, i'm sure people can think of uses for it from their own
experience.
How nice of you to include support for the case when two cases go to
the same thing. That is by far my biggest (and I think only?) use of
fall-through in switches.
Duff's device!
Hmm, I should put that on a test and ask people what it does and why it
works. I wonder if the average on that question would be above or below
25%.
On comp.lang.c, well above. Here, below. Bonus points for accurately
describing exactly what it was originally for.
tom
--
If it ain't Alberta, it ain't beef.