Python from Wise Guy's Viewpoint

Kenny Tilton ktilton at nyc.rr.com
Thu Oct 23 10:06:27 EDT 2003



Matthias Blume wrote:

> Pascal Costanza <costanza at web.de> writes:
> 
> 
>>The set of programs that are useful but cannot be checked by a static
>>type system is by definition bigger than the set of useful programs
>>that can be statically checked.
> 
> 
> By whose definition?  What *is* your definition of "useful"?  It is
> clear to me that static typing improves maintainability, scalability,
> and helps with the overall design of software. 

That sounds right. When I divided a large app into half a dozen sensible 
packages, several violations of clean design were revealed. But just a 
few, and there was a ton of code.

I did a little C++ and Java once, porting Cells to those languages. This 
was existing code, so I did not have to explore as I coded. It was a 
total pain, but then it was pretty easy to get working because so many 
casual goofs got caught by the compiler.

I just would never want to write original code this way, because then I 
am working fast and loose, doing this, doing that, leaving all sorts of 
code in limbo which would have to be straightened out to satisfy a compiler.

The other problem with static typing is that it does not address the 
real problem with scaling, viz, the exponential explosion of state 
interdependencies. A compiler cannot check the code I neglect to write, 
leaving state change unpropagated to dependent other state, nor can it 
check the sequence of correctly typed statements to make sure state used 
in calculation X is updated before I use that state.

kenny

-- 
http://tilton-technology.com
What?! You are a newbie and you haven't answered my:
  http://alu.cliki.net/The%20Road%20to%20Lisp%20Survey





More information about the Python-list mailing list