On Nov 10, 2019, at 08:00, Stephen J. Turnbull 
<[email protected]> wrote:
> 
> Andrew Barnert via Python-ideas writes:
>>> On Nov 7, 2019, at 19:59, Chris Angelico <[email protected]> wrote:
>>> 
>>> And I do the same with the operators that you disparagingly call
>>> "ASCII soup". I touch type them. What's the difference, other than
>>> that I can transfer my knowledge of typing English?
>> 
>> Well, there’s also the fact that you can touch type them into
>> Mail.app and pine and a StackOverflow answer box and a blog comment
>> and a general purpose text editor and get the exact same result you
>> get in PyCharm or PyDev. That’s a pretty huge difference, which the
>> OP is ignoring.
> 
> I don't think there would be a difference nowadays.  I type Japanese
> encoded in Unicode into Mail.app and Emacs and Nano and web forms all
> the time; they're perfectly happy with Unicode.  

Sure, they’re all happy with Unicode; the question is how you type it.

On a Mac, I can use a system input method to type Japanese characters, and it 
works the same way in every app (including the console), but iOS and Windows 
and X11 have different input methods, and if I sit down at someone else’s 
laptop it’s not likely to have the IM configured. (Or I can use emacs native 
IMs, which work across platforms, but only work within emacs.)

But it’s worse than that. MacOS, iOS, Android, Windows, and most Linux distros 
come with a Japanese IM that you just have to know how to enable and configure, 
but I don’t think any of them come with an APL symbol IM. So if I want to type 
APL source code, I have to find a third-party IM, or maybe even write one. (Or 
I have to buy an APL IDE or configure emacs, and not be able to type code 
anywhere else, including on my phone.)

And that wouldn’t change if Python used the APL arrow for assignment. I’m sure 
PyCharm would have a shortcut for it, and anyone who uses emacs could figure 
out how to set that up, and Pythonista would have an arrow key on its bar above 
the virtual keyboard, but none of that would enable me to type Python code into 
an email message or a StackOverflow answer or even a terminal REPL session.

> The question is what
> will the *audience* do with those unfamiliar symbols?

If we’re talking about APL-like symbol density, that’s an issue. But just 
adding the arrow for assignment wouldn’t commit us to that. It’s possible that 
the happy medium of readability lies somewhere between Python and APL, and 
that’s what Python would approach over the next decade. (Python already 
approximates a hybrid between English pseudocode and math notation; it would 
just be moving along that spectrum.) And the audience would have no problem 
with that—novices would learn the arrow for assignment in the very first 
lesson, and they’d learn how to use iota instead of range (and the best 
practices for when to do so) a few lessons in, and so on. If it really is more 
readable, people would learn to read it.

Of course it’s arguable that Python is already so close to the sweet spot that 
there’s no benefit to be gained there. But I don’t think that’s something 
that’s immediately self-evident. If it weren’t for the input problem, arrow 
might well be better than equals, a few extra operators might be helpful, etc. 
It’s the input that dooms that possibility, not the readability.


_______________________________________________
Python-ideas mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3/lists/python-ideas.python.org/
Message archived at 
https://mail.python.org/archives/list/[email protected]/message/7IK5SGRUEUJPLJE2I4GBOC46UWTUHHUL/
Code of Conduct: http://python.org/psf/codeofconduct/

Reply via email to