...The thing is, even without being able to switch back and forth within a single dataclass, you could achieve the same thing with inheritance:
...In both cases, you'd get re-ordered fields in __init__, and nowhere else:def __init__(c, d, *, a, b, e, f):
repr, comparisons, etc. would still treat them in today's order: a, b, c, d, e, f.
And the same logic would apply to positional argument fields