On Mon, Mar 18, 2019 at 05:51:08AM -0700, Rémi Lapeyre wrote: > Maths’ typing is explicit so you don’t need to spend brain cycles to > determine them.
Surely that depends on how formal you are being? Maths can vary hugely in formality, even at a professional level. It is a terrible overgeneralisation to state that maths is always explicitly typed, unless your definition of mathematics is defined so narrowly as to exclude the majority of maths done in the world. In my own personal experience, there is a lot of mathematics done using implicit typing. I've never seen anyone explicitly declare that the i, j or k loop variables in a sum or product is an element of ℤ, they just use them: ∞ ∑ expression i=0 Likewise it is very common to assume that n is an integer, x and y are Reals, and z is a Complex. Perhaps not in formal papers, but in less formal contexts, it is very common to assume specific convections used in the field rather than spell them out fully. For example: https://en.wikipedia.org/wiki/Volume_of_an_n-ball You might not give Wikipedia much credence, but I trust you won't object to John Baez and Terry Tao as examples of actual practicing mathematicians: https://johncarlosbaez.wordpress.com/2019/03/15/algebraic-geometry/ https://terrytao.wordpress.com/2019/02/19/on-the-universality-of-the-incompressible-euler-equation-on-compact-manifolds-ii-non-rigidity-of-euler-flows/ Similarly, I've never seen anyone explicit declare the type of a variable used for a change in variable. Even if we've explicitly stated that x is a Real, we might write something like: let u = x^2 + 3x in order to apply the chain rule, without explicitly stating that u is also a Real. Why would you need to? Its not like mathematics has a compiler which can flag type errors. We declare types only when needed. The rest of the time, we can use convention, domain-knowledge or inference to determine types. -- Steven _______________________________________________ Python-ideas mailing list Python-ideas@python.org https://mail.python.org/mailman/listinfo/python-ideas Code of Conduct: http://python.org/psf/codeofconduct/