Path: ...!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: Keith Thompson Newsgroups: comp.unix.shell,comp.unix.programmer,comp.lang.misc Subject: Re: Python (was Re: I did not inhale) Date: Wed, 28 Aug 2024 13:37:24 -0700 Organization: None to speak of Lines: 62 Message-ID: <87le0gbczf.fsf@nosuchdomain.example.com> References: <20240826083330.00004760@gmail.com> <20240826155113.000005ba@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Injection-Date: Wed, 28 Aug 2024 22:37:27 +0200 (CEST) Injection-Info: dont-email.me; posting-host="1017e97994ee365b6a0a4b9b05fc05d0"; logging-data="3779170"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19cwvyWDQeQLwFqKNBSY8SR" User-Agent: Gnus/5.13 (Gnus v5.13) Cancel-Lock: sha1:UPbLMbU4GokjbiEF0Ofma4Qxob0= sha1:0osHqcQTasLmbjcwMvUv+0lxZDM= Bytes: 4651 Bart writes: > On 28/08/2024 19:48, David Brown wrote: >> On 28/08/2024 19:43, Muttley@dastardlyhq.com wrote: >>> On Tue, 27 Aug 2024 21:34:54 -0000 (UTC) >>> Lawrence D'Oliveiro wrote: >>>> On Tue, 27 Aug 2024 11:26:18 +0100, Bart wrote: >>>> >>>>> (2) You want to temporarily comment out an 'if' line so that the >>>>> following block is unconditional. You can't do that with also >>>>> unindenting the block. >>>> >>>> In Emacs, I have commands defined to adjust the indentation of the >>>> selected region. Surely any other decent editor would offer the same. >>> >>> Writing editor editor macros in order to work around fundamentally bad >>> language design is not something a programmer should have to waste >>> time on. >>> >>> >> I don't know about Emacs, but in most editors the way you indent a >> block of code is to select the lines, then press "Tab".  Unindenting >> is "shift-Tab".  Changing tabs to spaces or spaces to tabs is done >> by selecting "Tabs to spaces" from the Edit menu, or something >> equally simple and obvious.  Many editor can be set to convert tabs >> to spaces (or vice versa) when saving files, perhaps specific to the >> file type (so you don't muck up your makefiles). >> It takes a special kind of genius to be able to program, and yet >> still have trouble with this kind of thing. > > The main problem isn't in changing the indentation of a block of code; > it is in HAVING to do so because of poor language design. A lesser one > is having to rely on whatever varied features that 100s of different > editors may have to do so. > > And yet another, of more significance, if that after you've indented a > block, it may now merge into an adjacent block that was already at > that new indent. If you later need to revert that first block back to > it's original position, you'd better make sure you mark that boundary. > > It is a language design issue pure and simple. Don't try and pin it on > the users and make out it's due to lack of expertise with their > editors. Of course we can all indent blocks; it's just an unnecessary > palaver. > > Clearly your point of view is as a language /user/ where languages and > their characteristics are an invariant that you can't do anything > about, can't change, and need to work around. > > But some of us devise (and, importanly, implement) languages of our > own and can be more vocal about misfeatures in others. If I'm moving chunks of code around in a C or C++ program, from one scope to another, I can get away with leaving the indentation as it is, because all the compiler cares about is where the braces are. But I *always* adjust the indentation to fit the code's new context. Python's use of indentation to indicate scoping just means that I have to do what I would have done anyway. -- Keith Thompson (The_Other_Keith) Keith.S.Thompson+u@gmail.com void Void(void) { Void(); } /* The recursive call of the void */