What is Expressiveness in a Computer Language
marshall.spight at gmail.com
Sat Jun 24 19:43:27 CEST 2006
Anton van Straaten wrote:
> But beyond that, there's an issue here about the definition of "the
> language". When programming in a latently-typed language, a lot of
> action goes on outside the language - reasoning about static properties
> of programs that are not captured by the semantics of the language.
> This means that there's a sense in which the language that the
> programmer programs in is not the same language that has a formal
> semantic definition. As I mentioned in another post, programmers are
> essentially mentally programming in a richer language - a language which
> has informal (static) types - but the code they write down elides this
> type information, or else puts it in comments.
> We have to accept, then, that the formal semantic definitions of
> dynamically-checked languages are incomplete in some important ways.
> Referring to those semantic definitions as "the language", as though
> that's all there is to the language in a broader sense, is misleading.
> 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 is starting to get a bit too mystical for my tastes.
More information about the Python-list