Why doesn't Python include non-blocking keyboard input function?

BartC bc at freeuk.com
Sat Oct 29 07:53:35 EDT 2016


On 29/10/2016 02:04, Steve D'Aprano wrote:
> On Fri, 28 Oct 2016 05:09 am, BartC wrote:

>> For years I've had discussions in comp.lang.c about things that C should
>> or should not have.

> Bart, don't be naive. The C language isn't going to "acquire a slick new
> enhancement" based on a few emails on compl.lang.c. C is an ISO-standard.
> Stability of the language,

C is a supposedly ultra-portable and apparently simple language. But 
take an application like CPython - you can't just grab the nearest C 
compiler and build it. You  need to blindly run tens of thousands of 
lines of scripts and assorted utilities, and compile with /gcc/, and 
hope it works. And that's in Linux; on Windows it's different yet again.

And take C compilers such as gcc and MSVC - they're monsters (how long 
would it take either of them to build itself? Now see below.)

The language and the way it's used have a few problems - why shouldn't 
someone talk about them?

  the fact that you have a known set of
> functionality, is precisely why it was made a standard in the first place:
> to discourage the sort of "wouldn't it be cool if..." pile up of features
> and bloat and ever-changing language specs.

Most of the enhancements I talked about were trivial. The language is 
unlikely to change because of me but it would be nice for someone to 
acknowledge them rather than defend one of C's crazy quirks or lack of a 
feature to the death.

(I use my own implementation language in place of C, which fixes most of 
those annoyances. Yesterday I was able to compile it entirely from 
scratch in 0.016 seconds. And I haven't misplaced a decimal point!
More info: http://pastebin.com/yFKzs2eF)

> You are *incredibly* privileged to do all your work on your own custom
> programming languages,

These days anyone (any coder) can do that if they wish. Apparently most 
people don't. I don't blame them.

> The size of Python isn't important to *you* on your fancy PC with entire
> gigabytes of hard drive, but to people interested in running Python on
> embedded hardware and micro-computers, every kilobyte counts.

The subject is about a feature that was available on any 1980s 
microcomputer with memory measured in KB.

Anyway I know about small systems, and the ones I create are pretty 
small (they will still fit on a floppy disk), but they will no longer 
run on tiny systems. But I'd like to see Python running on a 64KB system 
(Micropython doesn't count!).

>> I think this came up when someone wanted to switch from Visual Basic to
>> Python. The above is not a very sophisticated approach but it is very
>> simple and intuitive.
>
> Intuitive to whom? To me, it just looks weird.

'read a,b,c' is weird and unintuitive compared with its counterpart 
'print a,b,c'. OK....

BTW what does reading three integers from the user look like in Python?

-- 
Bartc




More information about the Python-list mailing list