On Sat, May 30, 2020 at 6:00 AM Steven D'Aprano <st...@pearwood.info> wrote:
> On Fri, May 29, 2020 at 06:03:30PM +0200, Alex Hall wrote: > > > > I never said that Python's scoping rules were implementation details. > > > > > > I said that the storage mechanism of *how* local variables are stored, > > > and hence whether or not writes to `locals()` are reflected in the > > > local variables, is an implementation detail. > > > > I didn't know what it was you were saying back then, and I'm trying, but > I > > still haven't figured it out. I understand bits of it, but I don't know > > what larger point you're trying to make. I think there are some things > you > > need to try harder to communicate clearly. > > Okay, I will try to explain in more detail. I don't know if it will help > or just make things more confusing, but I also replied to a post by > Dominik covering this. > I'm sorry, I should have been more explicit - I understand how variables work and didn't need a more detailed explanation. The problem is that it's not clear how all these details were relevant to the wider context of the discussion. Your post didn't address that, and now I think the answer is that it's not relevant and that you simply hadn't understood the context. More generally, I'm sorry about this post. I mean it with the best of intentions, but I need to be brutally honest and I don't think there's any way to make this easy for you to read. Please bear with me and be patient. In your case, "try harder to communicate clearly" generally doesn't mean writing in more detail. On the contrary, I think you could usually err on the side of writing too little. I get the impression that you enjoy writing these long posts, and that's fine, but you need to understand that doing so doesn't increase your chances of being understood. Try to focus on quality over quantity, and make sure it's clear *why* you're saying what you say. Connect it to the rest of the discussion. More important than your writing is your reading and understanding. Spend more time reading past posts in the thread and absorbing them so you can remember what was said later. If you think someone is implying that something was said previously, try to find that reference. I've seen you forgetting even your own words (a point about final classes https://mail.python.org/archives/list/python-ideas@python.org/message/QXUABJUQHVJCC3KHHKV5BWQUG7NOMMQL/) and not even doing a basic search to see what was being referred to, and then others have to take time to directly quote or link for you. Possibly as a symptom of being more enthusiastic about writing than reading, it often feels like you start replying to a post before you have finished reading it. The most blatant example of this was [here]( https://mail.python.org/archives/list/python-ideas@python.org/message/HHJ6XXXGQDCB3MBY6VO5TTQUKXHGRAHM/). I basically said "It's clear what the arguments are, but not which parameters they're bound to", and you basically quoted me with a redundant interjection "It's clear what the arguments are, [But it's not clear which parameters they're bound to] but not which parameters they're bound to". I asked "Steven, what happened above? ... It feels like you're not reading what I say." and then in the same post I went on to say "Anyway, talking about this has made me feel not so convinced of my own argument." [Your response]( https://mail.python.org/archives/list/python-ideas@python.org/message/FGITGCZMVOUY4T5WTOBLK5QZ2FSB3BSX/) was "Trust me Alex, I am reading what you say. What I don't know is whether you mean what you say, because frankly I think your position ... is so obviously wrong that I don't understand why you are standing by it." In other words, your response (1) didn't answer the question of what happened, and (2) immediately demonstrated again the very problem of not reading which I was pointing out and you had casually brushed aside, insisting that I was standing by a position which I had just abandoned. In addition to simply reading what people say, take more time to think about their words and try harder to understand what they mean. When in doubt, try to interpret them as being as rational as possible. This is called the principle of charity. Maybe you already know this, but I don't think you're implementing it well. This kind of problem is a repeating pattern with you in this list. I find it exhausting and frustrating not only having discussions with you but watching you have discussions with other people and doing the same things to them. Now, as to what happened in this thread: Greg first proposed "a way of declaring optional arguments with no default, and a way of conditionally assigning a value to them if they are not bound.": https://mail.python.org/archives/list/python-ideas@python.org/message/4C2WQRFTLBXXQ32IJTWJA4QQKYKBISRC/ Chris referred to this idea here: https://mail.python.org/archives/list/python-ideas@python.org/message/SJPGHG2XPVM2ONDGPUHJZNBVRKAOMZMF/ He quite clearly mentioned that Greg suggested the idea, which would be a cue to look that up if you weren't sure about it. But aside from that, he basically spelled out the proposal again as he saw it, with slightly different syntax. You responded to that post by Chris, starting a long discussion about the semantics of the word 'state' in regards to variables. It seems to me that most of this was pointless. I was struggling to see what relevance your arguments had to the proposal by Greg and Chris, and you didn't seem to be aware of that problem. I don't think I was alone in this experience. Finally, when I brought you back to the main point ( https://mail.python.org/archives/list/python-ideas@python.org/message/PEHDA3FAFOZSD43MVI4GK24MSW4A5LQH/) it became clear that you didn't understand the proposal. `?=` was not the extent of it, and both of the above posts clearly laid out that there would also be a way to declare optional parameters without a default (either `def foo(bar=):` or `def foo(?bar):`) which could therefore be unbound in the body. I think it's reasonable to expect that would have read these posts, especially considering you replied to one of them. And if you see an obvious flaw, take some time to refresh your memory and reread a proposal so you know that it hasn't been addressed already.
_______________________________________________ Python-ideas mailing list -- python-ideas@python.org To unsubscribe send an email to python-ideas-le...@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/F3QW2H3FJONBCR7E2I5UGJGKKKNMIE4S/ Code of Conduct: http://python.org/psf/codeofconduct/