Python is DOOMED! Again!
Mario Figueiredo
marfig at gmail.com
Thu Jan 29 03:34:52 EST 2015
In article <54c980cd$0$12981$c3e8da3$5496439d at news.astraweb.com>,
steve+comp.lang.python at pearwood.info says...
>
> Ian, that's obvious. Just open your eyes:
>
> Scala
> def addInt( a:Int, b:Int ) : Int
>
> Python
> def addInt( a:int, b:int ) -> int:
>
>
> They're COMPLETELY different. In Scala they are *type declarations*, not
> annotations. We're talking about annotations, not declarations. They're as
> different as cheese and a very slightly different cheese. Do try to keep
> up.
>
> *wink*
The sarcasm is unnecessary. They are different yes. Are you on purpose
confusing the syntax of a feature with its meaning? Because while you
have a very similar syntax between Julia, Scala and Python. Their
meanings are very different.
I think it is obvious to anyone that if a feature like type annotations
are meant to be EVALUATED AT RUNTIME (and I myself gave you another
example of Julia), it makes every sense for that feature to be a part of
the programming language syntax. I could never argue against Julia or
Scala type annotations on that basis. The syntax is an integral part of
the executable code.
But when a feature is not meant for runtime evaluation, why should it
clutter your executable code? Make me understand your reasoning?
Your list of programming languages is just plain wrong. To my knowledge
(there's a few languages there I don't know and never used), none of
those languages implement anything like Python. Type annotations in
python are entirely ignored by the interpreter except to make them
available to external libraries. This is a feature that I have seen
implemented in numerous languages as a part of doc-like comments. Never,
ever, as a part ofthe language syntax.
More information about the Python-list
mailing list