What is Expressiveness in a Computer Language

Joachim Durchholz jo at durchholz.org
Sun Jun 25 08:12:47 EDT 2006


rossberg at ps.uni-sb.de schrieb:
> Joachim Durchholz wrote:
>>  > A type is the encoding of these properties. A type
>>> varying over time is an inherent contradiction (or another abuse of the
>>> term "type").
>> No. It's just a matter of definition, essentially.
>> E.g. in Smalltalk and Lisp, it does make sense to talk of the "type" of
>> a name or a value, even if that type may change over time.
> 
> OK, now we are simply back full circle to Chris Smith's original
> complaint that started this whole subthread, namely (roughly) that
> long-established terms like "type" or "typing" should *not* be
> stretched in ways like this, because that is technically inaccurate and
> prone to misinterpretation.

Sorry, I have to insist that it's not me who's stretching terms here.

All textbook definitions that I have seen define a type as the 
set/operations/axioms triple I mentioned above.
No mention of immutability, at least not in the definitions.

Plus, I don't see any necessity on insisting on immutability for the 
definition of "type". Otherwise, you'd have to declare that Smalltalk 
objects truly don't have a type (not even an implied one), and that 
would simply make no sense: they do in fact have a type, even though it 
may occasionally change.

Regards,
Jo



More information about the Python-list mailing list