syntax difference
Steven D'Aprano
steve+comp.lang.python at pearwood.info
Mon Jun 18 10:32:50 EDT 2018
Further to my earlier comments...
On Sun, 17 Jun 2018 12:07:14 -0700, Jim Lee wrote:
> IMHO, trying to shoehorn static type checking on top of a dynamically
> typed language shows that the wrong language was chosen for the job.
Relevant:
http://lambda-the-ultimate.org/node/1519
and this quote is extremely pertinent:
Giving people a dynamically-typed language does not mean
that they write dynamically-typed programs.
-- John Aycock
Lots of people have observed that *nearly all* real Python code is much
less dynamic than the language allows. When you call "len(x)", the
compiler has to resolve the name "len" at runtime in case it has been
monkey-patched or shadowed, but in practice that hardly ever happens.
Moving the type-checking out of the core language into the IDE or linter
which can be used or not used according to the desire of the programmer
is an elegant (partial) solution to the problem that testing can never
demonstrate the absence of bugs, only their presence, without
compromising on the full range of dynamic programming available to those
who want it.
--
Steven D'Aprano
"Ever since I learned about confirmation bias, I've been seeing
it everywhere." -- Jon Ronson
More information about the Python-list
mailing list