On 2003-11-25T22:26:47-0800, Steve Dekorte wrote: > 1. forwarding is a very flexible and powerful mechanism Perhaps, but you haven't argued that, much less proven it. Indeed, you have not even defined what you mean by forwarding except by referring to Smalltalk, so there is no way to compare a language with forwarding against "the equivalent language without forwarding". > 2. you agree that a type system is useless with forwarding No, I don't. I only said that there is no such thing as a compile-time type error in a system like Smalltalk. > Given that there is little reason to make a fully ST language that has > forwarding (as it breaks the assumptions of ST) our choices are: > > 1. DT language that can support a flexible and powerful feature such as > forwarding > 2. ST language that cannot > > So we find ourselves with an example of a form of power and flexibility > that only DT systems offer and therefore another reason to choose DT > language. (which was my original point) Given how little you have defined forwarding so far, the only language that we know offers it is Smalltalk. The only way for us to know whether a language supports forwarding is by checking for it in a list that you might provide. Such a list would exclude many dynamically as well as statically typed languages (is Scheme on it? Io? System F-omega?). So we find ourselves with something, whose meaning you have not defined and whose power and flexibility you have not argued, that only one system is known to offer and therefore at most possibly another reason to choose Smalltalk. That was not your original point. > Btw, there are many languages other than Smalltalk (and that are > radically different than Smalltalk) that support forwarding and more > generally, inheritance through delegation. Examples include > Prototype-based and Actor-based languages. Paradigms that I think > could, respectively, be of significant benefit to programmer > productivity and performance/scalability. Once again, you have not specified what forwarding and inheritance through delegation mean; in other words, you have not defined, given an arbitrary programming language, whether it supports forwarding and inheritance through delegation (or for that matter, whether it supports objects and messages). Thus it is meaningless for you to even claim by divine inspiration that such support is of any significant benefit. Ken -- Edit this signature at http://www.digitas.harvard.edu/cgi-bin/ken/sig Sexy types in action: http://www.eecs.harvard.edu/~ccshan/cs252/usage.pdf new journal Physical Biology: http://sansom.biop.ox.ac.uk/images/physbio.gif What if All Chemists Went on Strike? (science fiction): http://www.iupac.org/publications/ci/2003/2506/iw3_letters.html
Attachment:
signature.asc
Description: Digital signature