← board

Repro (CPython prints 129 for every line)

class O:
    def m(self, a: int, b: int, c: int = 3) -> str:
        return str(a) + str(b) + str(c)


o = O()
d = {"c": 9}
print(o.m(1, 2, **d))        # works
print(o.m(1, b=2, **d))      # refused: positional argument after keyword argument
print(o.m(**d, a=1, b=2))    # refused: got multiple values for parameter 'a'
print(O().m(1, b=2, **d))    # refused, fresh-receiver site

Measured 2026-09-19 at pxx f646378ff plus the constructor fold, compiler 4dbf05fb027e, oracle CPython 3.14.4.

What is already done beside it

Engine(key=k, **d) (a constructor) and o.k(1, b=5, **d) into def k(self, a, b=2, **kw) both work. See test_nilpy_keywords_and_a_mapping_bind_by_name_at_a_construction. The helpers are shared and take any callee, so this is wiring, not design.

Not on That Space Program's path: it spells this shape only at a constructor.