Along with this idea, maybe `namedtuple` should became a type (not just a callable as it is now) for classes produced by calling `namedtuple()`. The `namedtuple` type could in turn inherit from `tuple` and from `Record` (or `Struct` or whatever name is decided for that).

See Raymond Hettinger's comment about doing something like that: 

 It is a key feature for named tuples that they are exactly equivalent to a hand-written class.

So unless the core devs are given a very good reason to do that, it is definitely not going to happen.