Skip Montanaro wrote:
    Francis> "Every well-formed expression of the language can be assigned a
    Francis> type that can be deduced from the constituents of the
    Francis> expression alone." Bird and Wadler, Introduction to Functional
    Francis> Programming, 1988

    Francis> This is certainly not the case for Python since one and the
    Francis> same variable can have different types depending upon the
    Francis> execution context. Example :

    Francis> 1- if a is None:
    Francis> 2-   b = 1
    Francis> 3- else:
    Francis> 4-   b = "Phew"
    Francis> 5- b = b + 1

    Francis> One cannot statically determine the type of b by examining the
    Francis> line 5- alone.

Do you have an example using a correct code fragment?  It makes no sense to
infer types in code that would clearly raise runtime errors:

On the contrary, the point of type inference is to detect such errors. If the program was always well-formed, there would be no point in developing a type inference tool.


        Philippe
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to