Here is a minimal case.
def foo(x:int, y:int) -> tuple:
return (x*y, y//2)
It's very tempting to be able to write -> tuple(:int, :int) which is not a valid format. Is there a correct approach in this case, or is it still a gray area until python moves further down the type annotation road?
edit: It's apparently possible to do something of the like
def bar(x, y) -> ((str, int), (str, int)):
return ("%s+%s" %(x,y), x+y), ("%s-%s" %(x,y), x-y)