On Sun, 2003-11-16 at 21:59, Daniel Weinreb wrote: > Anonymous classes don't loosen or circumvent the type system in any > way. Byte-code > manipulation isn't part of the language and could be done from day 1. > Generics are > indeed a way to improve the type system, but I would say they are to > "tighten" it rather > than loosen it. Use of reflection to circumvent the type system is not > considered > appropriate and is certainly not the reason that reflection was introduced. Perhaps it would be more accurate to say that anonymous classes are syntactic sugar to ease the burden of the type system in select circumstances? I'd describe generics as an attempt to make the type system more flexible. Reflection could also be described this way, being an extension to the type system with meta-types. Byte-code engineering has certainly been possible from the start but it seems like it has only recently become broadly popular as an implementation technique. > Saying "Java programmers don't seem ready to abandon the type system > completely" > seems to imply that Java programmers are close to ready to abandon the > type system. > I haven't seen evidence of this. I didn't mean to imply this or to condemn Java or assert that its type system is flawed in some way. I chose Java to illustrate this point because I think it's a good example of the changes a language undergoes in heavy production use. There does seem to be a real vogue in the Java advocacy community for dynamic languages right now, probably riding the coattails of the XP wave. But even there people don't seem to want to throw out static typing entirely but instead to find a way to switch it off to some degree. The more debates I read about static vs dynamic typing the more I feel like a language that allowed programmers to work along a continuum between the two extremes would be a big win. It would be for the way I work, at least. -- Miles Egan <miles@caddr.com>
Attachment:
signature.asc
Description: This is a digitally signed message part