What's so special about print? It's just a function.

I'd argue it's a pretty special function given its history. Just because it's used less frequently that something else doesn't mean it's not "special" in some sense. `iter x` never worked, whereas `print x` used to work, which is the only reason I'm giving it special status. 

Regardless, I'd rather not have this feature. As you said it's not 100% backwards compatible, so the usefulness is limited. 

On Thu, Jun 11, 2020 at 11:49 AM Steven D'Aprano <steve@pearwood.info> wrote:
On Wed, Jun 10, 2020 at 08:00:26PM -0400, Jonathan Crall wrote:
> I wouldn't mind if this *only *worked for the specific characters "print".

I would. What's so special about print? It's just a function.

I use `iter` much more than print. Should we make a special exception
for only 'iter' too? Or instead?

`print` is especially problematic, because zero-argument form of print
is possible. This makes it a landmine waiting for the unwary:

    print x, y, z  # works
    print x  # works
    # now print a blank line
    print  # silent failure


That's especially going to burn people who remember Python 2, where it
did print a blank line instead of evaluating to the `print` object.

--
Steven
_______________________________________________
Python-ideas mailing list -- python-ideas@python.org
To unsubscribe send an email to python-ideas-leave@python.org
https://mail.python.org/mailman3/lists/python-ideas.python.org/
Message archived at https://mail.python.org/archives/list/python-ideas@python.org/message/ICVRZKRAPKRCNY7BTMQY7GRYV37ADQRA/
Code of Conduct: http://python.org/psf/codeofconduct/


--
-Dr. Jon Crall (him)