"Andrei Alexandrescu" <seewebsiteforem...@erdani.org> wrote in message news:gsbjci$f6...@digitalmars.com... > Of course I agree. The thing is, if you decide to use a dynamic type, then > it will become like a dynamic type. >
I didn't have a problem with that reasoning when Variant was added, because that was just one type. But now we're talking about opening D up to an entire class (no pun intended) of dynamic types. We've got an ointment factory and are now talking about adding a production line for flies and deliberately minimizing isolation. I use D because it's static, if we bring this level of dynamic-ism into it, then I won't be able to keep the flies out of my static ointment. "Andrei Alexandrescu" <seewebsiteforem...@erdani.org> wrote in message news:gsbjci$f6...@digitalmars.com... > Steven Schveighoffer wrote: >> >> I think Nick's point number 2 is that you would have to write the above >> as: >> >> void twix(T)(T value) >> { >> value.invokeMethod("bar"); >> value.invokeMethod("bar"); >> } >> >> which would work whether bar was dynamically or statically defined. > > And will uglify and pessimize all code for the benefit of the few. > Funny, that's very similar to my reasoning *against* allowing opDotExp. It undermines static typing expectations for the benefit of the few. It's very similar, but just on a smaller scale, to making declarations optional for the sake of those who don't like to use them.