What is Expressiveness in a Computer Language

Andreas Rossberg rossberg at ps.uni-sb.de
Fri Jun 23 06:02:36 EDT 2006


David Hopwood wrote:
>>
>>"Values" refers to the concrete values existent in the semantics of a
>>programming language. This set is usually infinite, but basically fixed.
>>To describe the set of "values" of an abstract type you would need
>>"fresh" values that did not exist before (otherwise the abstract type
>>would be equivalent to some already existent type). So you'd need at
>>least a theory for name generation or something similar to describe
>>abstract types in a types-as-sets metaphor.
> 
> Set theory has no difficulty with this. It's common, for example, to see
> "the set of strings representing propositions" used in treatments of
> formal systems.

Oh, I was not saying that this particular aspect cannot be described in 
set theory (that was a different argument, about different issues). Just 
that you cannot naively equate types with a set of underlying values, 
which is what is usually meant by the types-are-sets metaphor - to 
capture something like type abstraction you need to do more. (Even then 
it might be arguable if it really describes the same thing.)

- Andreas



More information about the Python-list mailing list