<div dir="auto">There name Data seems very intuitive to me without suggesting type declaration as Any does (but it can still be treated as a synonym by actual type checkers)</div><div class="gmail_extra"><br><div class="gmail_quote">On Dec 22, 2017 12:12 PM, "Paul Moore" <<a href="mailto:p.f.moore@gmail.com">p.f.moore@gmail.com</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On 22 December 2017 at 19:50, Gregory P. Smith <<a href="mailto:greg@krypto.org">greg@krypto.org</a>> wrote:<br>
<br>
> My preference for this is "just use Any" for anyone not concerned about the<br>
> type.  But if we wanted to make it more opaque so that people need not<br>
> realizing that they are actually type annotations, I suggest adding an alias<br>
> for Any in the dataclasses module (dataclasses.Data = typing.Any)<br>
><br>
> from dataclasses import dataclass, Data<br>
><br>
> @dataclass<br>
> class Swallow:<br>
>     weight_in_oz: Data = 5<br>
>     laden: Data = False<br>
>     species: Data = SwallowSpecies.AFRICAN<br>
><br>
> the word "Data" is friendlier than "Any" in this context for people who<br>
> don't need to care about the typing module.<br>
><br>
> We could go further and have Data not be an alias for Any if desired (so<br>
> that its repr wouldn't be confusing, not that anyone should be looking at<br>
> its repr ever).<br>
<br>
That sounds like a nice simple proposal. +1 from me.<br>
<br>
Documentation can say that variables should be annotated with "Data"<br>
to be recognised by the decorator, and if people are using type<br>
annotations an actual type can be used in place of "Data" (which acts<br>
the same as typing.Any. That seems to me to describe the feature in a<br>
suitably type-hinting-neutral way, while still making it clear how<br>
data classes interact with type annotations.<br>
<br>
Paul<br>
______________________________<wbr>_________________<br>
Python-Dev mailing list<br>
<a href="mailto:Python-Dev@python.org">Python-Dev@python.org</a><br>
<a href="https://mail.python.org/mailman/listinfo/python-dev" rel="noreferrer" target="_blank">https://mail.python.org/<wbr>mailman/listinfo/python-dev</a><br>
Unsubscribe: <a href="https://mail.python.org/mailman/options/python-dev/mertz%40gnosis.cx" rel="noreferrer" target="_blank">https://mail.python.org/<wbr>mailman/options/python-dev/<wbr>mertz%40gnosis.cx</a><br>
</blockquote></div></div>