What is Expressiveness in a Computer Language
Andreas Rossberg
rossberg at ps.uni-sb.de
Thu Jun 22 11:36:36 EDT 2006
Marshall wrote:
>>
>>>What prohibits us from describing an abstract type as a set of values?
>>
>>If you identify an abstract type with the set of underlying values then
>>it is equivalent to the underlying representation type, i.e. there is no
>>abstraction.
>
> I don't follow. Are you saying that a set cannot be described
> intentionally? How is "the set of all objects that implement the
> Foo interface" not sufficiently abstract? Is it possible you are
> mixing in implementation concerns?
"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.
- Andreas
More information about the Python-list
mailing list