[Python-Dev] PEP 557: Data Classes

Nick Coghlan ncoghlan at gmail.com
Tue Sep 12 22:09:25 EDT 2017


On 13 September 2017 at 02:01, Chris Barker - NOAA Federal
<chris.barker at noaa.gov> wrote:
> This really does match well with the record concept in databases, and most
> people are familiar with that.

No, most people aren't familiar with that - they only become familiar
with it *after* they've learned to program and learned what a database
is.

> Though it will. E a touch confusing until (if
> ever) most of the database and cab traders, etc start using them.

Aside from the potential confusion with other technical uses of
"record", a further problem with "record" is that it's ambiguous as to
whether its referring to the noun (wreck-ord) or the verb (ree-cord).
Even if folks correctly interpret it as a noun, there's still plenty
of opportunities for folks to guess incorrectly about what it means
based on the other conventional English uses of the word (e.g. a
"personal record" will consist of multiple "records" in the database
sense).

So in this case, the vagueness of "data class" is considered a feature
- since it doesn't inherently mean *anything*, folks are more likely
to realise that they need to look up "Python data class", and if I
search for that in a private window, the first Google hit is
https://stackoverflow.com/questions/3357581/using-python-class-as-a-data-container
and the second is Eric's PEP.

> Also, considering their uses, it might make sense to put them in the
> collections module.

Data classes are things you're likely to put *in* a collection, rather
than really being collections themselves (they're only collections in
the same sense that all Python classes are collections of attributes,
and that's not the way the collections module uses the term).

Cheers,
Nick.

-- 
Nick Coghlan   |   ncoghlan at gmail.com   |   Brisbane, Australia


More information about the Python-Dev mailing list