[Python-Dev] Rationale for sum()'s design? (original) (raw)
Guido van Rossum gvanrossum at gmail.com
Wed Mar 16 17:28:22 CET 2005
- Previous message: [Python-Dev] Rationale for sum()'s design?
- Next message: [Python-Dev] Rationale for sum()'s design?
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
> Thinking ahead to generic types, I'd like the full signature to be: > > def sum(seq: sequence[T], initial: T = 0) -> T.
Would this syntax work with generic types: def sum(seq: sequence[T], initial: T = T()) -> T.
Maybe, but it would preclude union types; continuing with the (bad) example of strings, what should one choose for T when seq == ['a', u'b']? The general case is a sequence of objects of different types that are mutually addable. This can be made to work with the (hypothetical!!!!) type system by using unions, but you can't instantiate an instance of a union without being more specific.
-- --Guido van Rossum (home page: http://www.python.org/~guido/)
- Previous message: [Python-Dev] Rationale for sum()'s design?
- Next message: [Python-Dev] Rationale for sum()'s design?
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]