What is Expressiveness in a Computer Language
Anton van Straaten
anton at appsolutions.com
Sun Jun 25 20:11:22 CEST 2006
rossberg at ps.uni-sb.de wrote:
>>>In this context, the term "latently-typed language" refers to the
>>>language that a programmer experiences, not to the subset of that
>>>language which is all that we're typically able to formally define.
> That language is not a subset, if at all, it's the other way round, but
> I'd say they are rather incomparable. That is, they are different
The "subset" characterization is not important for what I'm saying. The
fact that they are different languages is what's important. If you
agree about that, then you can at least understand which language I'm
referring to when I say "latently-typed language".
Besides, many dynamically-typed languages have no formal models, in
which case the untyped formal model I've referred to is just a
speculative construct. The language I'm referring to with
"latently-typed language" is the language that programmers are familiar
with, and work with.
>>That is starting to get a bit too mystical for my tastes.
> I have to agree.
> \sarcasm One step further, and somebody starts calling C a "latently
> memory-safe language", because a real programmer "knows" that his code
> is in a safe subset... And where he is wrong, dynamic memory page
> protection checks will guide him.
That's a pretty apt comparison, and it probably explains how it is that
the software we all use, which relies so heavily on C, works as well as
But the comparison critiques the practice of operating without static
guarantees, it's not a critique of the terminology.
More information about the Python-list