What is Expressiveness in a Computer Language

Andrew McDonagh news at andmc.com
Sun Jun 25 14:28:01 EDT 2006


Joachim Durchholz wrote:
> Chris Smith schrieb:
>> Joachim Durchholz <jo at durchholz.org> wrote:
>>> 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.
>>
>> The immutability comes from the fact (perhaps implicit in these 
>> textbooks, or perhaps they are not really texts on formal type theory) 
>> that types are assigned to expressions,
> 
> That doesn't *define* what's a type or what isn't!
> 
> If it's impossible to assign types to all expressions of a program in a 
> language, that does mean that there's no useful type theory for the 
> program, but it most definitely does not mean that there are no types in 
> the program.
> I can still sensibly talk about sets of values, sets of allowable 
> operations over each value, and about relationships between inputs and 
> outputs of these operations.
> 
> So programs have types, even if they don't have a static type system.
> Q.E.D.
> 

Of course not.  Otherwise programs using dynamically  typed systems 
wouldnt exist.

> Regards,
> Jo

I haven't read all of this thread, I wonder, is the problem to do with 
Class being mistaken for Type? (which is usually the issue)



More information about the Python-list mailing list