I agree with the OP that the current syntax is confusing. The issue is, the meaning of * is context-dependent.
Why not this: Func (*args) == Func (unpack (args)) def Func (*args) == Func (pack (args)) That seems very clear IMO -- http://mail.python.org/mailman/listinfo/python-list