[Types-sig] Why I don't like static types in Python

Bill Tutt billtut@microsoft.com
Sat, 28 Nov 1998 17:12:17 -0800


> From: Tim Peters [mailto:tim_one@email.msn.com]
> 
> Ahem -- functional languages deliberately constrain their 
> type systems to
> make type inference tractable.  Python doesn't.
> 

Well, Self had a type infrencing engine written for it, and its argubably as
dynamic, or more dynamic than Python. (Self has real closures, and no
classes but does have inheritance). Ole Agesen's Ph.D. thesis
(http://www.sunlabs.com/technical-reports/1996/abstract-52.html) "Concrete
Type Inferencing: Delivering Object-Oriented Applications".

However several factors make type infrencing Python fairly difficult:
	Type infrencing is best used in a closed environment. (akin to using
freeze)
	The type infrencing system also benefits greatly from having
detailed type signatures of C extensions.

Which isn't to say it isn't possible, it is, its just complex and time
consuming to implement. 
Anybody need a masters thesis topic? ;)

Bill