It seems to me that the syntax for late binding could be chosen so as to leave the possibility of expansion open in the future, and defer (har har) the entire generalized thunk discussion?

So why not go with syntax like this, where before the ? just represents a keyword to be bike shedded ("defer", "thunk", "later", "...."):

def func(a, b=? a): ...

I kind of like using the ellipses btw; it looks sort of like "later..." to me: 

def func(a, b = ... a):
    ...