From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-3.6 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, HTML_MESSAGE,MAILING_LIST_MULTI,NICE_REPLY_A,RCVD_IN_DNSWL_MED autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 31588 invoked from network); 17 Dec 2022 17:33:47 -0000 Received: from zero.zsh.org (2a02:898:31:0:48:4558:7a:7368) by inbox.vuxu.org with ESMTPUTF8; 17 Dec 2022 17:33:47 -0000 ARC-Seal: i=1; cv=none; a=rsa-sha256; d=zsh.org; s=rsa-20210803; t=1671298427; b=RiIvKiiCpxWsvXAkrEJTapPNEwe49ZCvfYj477wCk0hGtRI+m7Ljwk21lI9lD12zqBNuR4sc7I DviwtfCDs2dGduqkAjcGlTBjdWP3PhMxAPiKSPjamlTv2CbMa+7wfsconZuneQjaHm+FtyB/F1 86X1+qwsT7TQ65DaaLHKVJHZBIgWAY8ORR0n2RI3pXQ7HY8jvJrgahur4/FEHR9puf9ao1VhSc WO82fLvMoTy9GjgcKUy7HwMFq9WiC0F4T7n2NoSYAirooocYsFUcwrHVsgKosf6x7IRhumw5Ov rGkL++SQ/oTFLLHCn/Tc4neKIY3NgeZizLseVoaI7FGMgw==; ARC-Authentication-Results: i=1; zsh.org; iprev=pass (mta03.eastlink.ca) smtp.remote-ip=24.224.136.9; dmarc=none header.from=eastlink.ca; arc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed; d=zsh.org; s=rsa-20210803; t=1671298427; bh=7t+TPM09c4xiEQfLRliePKGNG5c/egbWYB+9/3+/lPc=; h=List-Archive:List-Owner:List-Post:List-Unsubscribe:List-Subscribe:List-Help: List-Id:Sender:In-Reply-To:From:References:To:Subject:MIME-Version:Date: Message-ID:Content-Type:DKIM-Signature; b=T39nZs8rWb0cbgjZHaytun1yU3A1RDLXH80nofiPSnAg41tXcbCtNDVSmB6/iCve/qBYggDHys GUnSZqRY/HYSNQonS/231o0nwLSzf/wuYtU6Ngztnzd0ENg9M9pQ4ooSZlBRfGoQ2qPPpacJXj n5roSu00dhikhcFB3oz+lfauoxusQNaeRc9qEADwX6bh+t8zHkwn/Jvnt3sYpxFSlbybaFZHBf 7+3qKHC1aaCRW4NXxRtZoKSxmYRFxLDz4BrK62aoBxxDmlj+28E4v7jspq+jX80h/wXI35DJss 6frs0AWJ3A4TCb98oS0In4RHfCXW9NFGXUfmAr1iqJaDqg==; DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=zsh.org; s=rsa-20210803; h=List-Archive:List-Owner:List-Post:List-Unsubscribe: List-Subscribe:List-Help:List-Id:Sender:In-reply-to:From:References:To: Subject:MIME-version:Date:Message-id:Content-type:Reply-To:Cc: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID; bh=saf8cYP2FJHkTq5IDMnR2raWcbo6Hp8ZS4/XGWcPNXw=; b=gjeV1cVKspHg0mbLcNyfq72uI/ GY+a0ShIjEB/T9y45tmRc8daHW2x6JYw1hMZw3C4iaFPJ3gKThNlqBRjsF9IZRxce52rhZvu9qS7q 86UZoudlfWwDnFtM+tEnWo8PRzRfWXmxwySLGKhapDULs+FR6pwLI7iM6FR0Ox0vzyEYmKIM6qNyJ IR4VJaVz2hnJJWS74dEqoSUz6cLOhA+KOqgdgTF/ROOeTwxFNz5EFK2kPaWVIBtJAuFCntPaFG6Ku kozvC8kTsqwtxtPgJN/hMktXms0yc7a1IMa47MpJMDCMIiWkS8Sw5lqmv0mqOiBHc9Z8Y8of8OPTj E+STX7UA==; Received: by zero.zsh.org with local id 1p6b4E-000Ibk-Ro; Sat, 17 Dec 2022 17:33:46 +0000 Authentication-Results: zsh.org; iprev=pass (mta03.eastlink.ca) smtp.remote-ip=24.224.136.9; dmarc=none header.from=eastlink.ca; arc=none Received: from mta03.eastlink.ca ([24.224.136.9]:55777) by zero.zsh.org with esmtps (TLS1.2:ECDHE-RSA-AES128-GCM-SHA256:128) id 1p6b3U-000Hx6-6g; Sat, 17 Dec 2022 17:33:01 +0000 Received: from csp01.eastlink.ca ([71.7.199.166]) by mta03.eastlink.ca (Oracle Communications Messaging Server 8.0.2.2.20180531 64bit (built May 31 2018)) with ESMTPS id <0RN100H9GQ1IU820@mta03.eastlink.ca> for zsh-users@zsh.org; Sat, 17 Dec 2022 13:32:58 -0400 (AST) Received: from [192.168.0.4] ([24.207.18.108]) by Eastlink with ESMTPSA id 6b3SpkLlfEN8v6b3SpkqGZ; Sat, 17 Dec 2022 13:32:58 -0400 X-Authority-Analysis: v=2.4 cv=IPDESCjG c=1 sm=1 tr=0 ts=639dfd4a a=xN66ZtSbq5jdJYpBp7G/jQ==:117 a=xN66ZtSbq5jdJYpBp7G/jQ==:17 a=r77TgQKjGQsHNAKrUKIA:9 a=gir0-LH0AAAA:8 a=QLzRvZzVBT35g8CNJagA:9 a=QEXdDO2ut3YA:10 a=pGLkceISAAAA:8 a=r5AUmifY-XYAUBoCShIA:9 a=q_X8ecax6g24qvfp:21 a=_W_S_7VecoQA:10 a=lqcHg5cX4UMA:10 a=aLewGyoHDmJ4ULJHWpSz:22 X-Vade-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrfeelgddutdduucetufdoteggodetrfdotffvucfrrhhofhhilhgvmecugfetuffvnffkpffmpdfqfgfvnecuuegrihhlohhuthemuceftddtnecunecujfgurheptgfkffggfgfuvfhfhfgjsegrtderredtfeejnecuhfhrohhmpeftrgihucetnhgurhgvfihsuceorhgrhigrnhgurhgvfihssegvrghsthhlihhnkhdrtggrqeenucggtffrrghtthgvrhhnpefgtddvudehveeuhfevtdfgueetfedvhfdtheeltefhieduleeukeejjeffhfehgfenucfkphepvdegrddvtdejrddukedruddtkeenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepihhnvghtpedvgedrvddtjedrudekrddutdekpdhhvghloheplgduledvrdduieekrddtrdegngdpmhgrihhlfhhrohhmpehrrgihrghnughrvgifshesvggrshhtlhhinhhkrdgtrgdpnhgspghrtghpthhtohepvddprhgtphhtthhopeerredprhgtphhtthhopeiishhhqdhushgvrhhsseiishhhrdhorhhgpdhgvghtqdgkihhprfgrshhsfigupehtrhhuvg X-Vade-Score: 0 X-Vade-State: 0 X-EL-AUTH: rayandrews@eastlink.ca Content-type: multipart/alternative; boundary="------------grILd5VeXExx0yzjjQa4mG2r" Message-id: Date: Sat, 17 Dec 2022 09:32:57 -0800 MIME-version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.5.0 Subject: Re: uninvited members of associative array To: zsh-users@zsh.org References: <46161d8a-c177-4134-836e-592e5c048887@app.fastmail.com> <902fb047-3435-89a3-e7ea-74e74075c2c6@eastlink.ca> <09d09690-08c8-4499-9011-9c45d7676f52@app.fastmail.com> <81952d4b-3ead-f912-f987-fe9a37dbd256@eastlink.ca> Content-language: en-US From: Ray Andrews In-reply-to: X-Seq: 28574 Archived-At: X-Loop: zsh-users@zsh.org Errors-To: zsh-users-owner@zsh.org Precedence: list Precedence: bulk Sender: zsh-users-request@zsh.org X-no-archive: yes List-Id: List-Help: , List-Subscribe: , List-Unsubscribe: , List-Post: List-Owner: List-Archive: This is a multi-part message in MIME format. --------------grILd5VeXExx0yzjjQa4mG2r Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 2022-12-17 04:47, Pier Paolo Grassi wrote: > it certainly is to be said that, even if the shell implements all the > basic programming constructs, it is meant for different > objectives then those that are targeted by the things one most > commonly calls "programming languages", and even among those there are > many distinctions, so probably it wouldn't be so easy to establish an > exact definition that includes only the "ideals" (whatever that means) > programming languages and leaves everything else out. That being said, > I think that one should accept the language for what it is and what is > meant to be and do,and even if something would be awesome if it was > engineered with hindsight (like array expansion without empty string > elision with a more same syntax, or by default) it should be wise to > understand what the language is or is not before dipping too much > one's arms and feets in it, I agree.  One should know what to expect and what is possible. But one's understanding of these things comes from banging up against the limitations.  My criticisms are not meant to be in a negative frame of mind, I'm just given to speculation on what might be improved, and often I'm not even correct. > reading the manual at least a couple of times front to bottom, since > someone has put the effort to write it. At least I try to do it this > way, I experiment a bit but then I try to read everything I can before > resorting to ask for help, it seems only fair given that someone has > to put aside whatever he is doing to answer me. I will experiment and read and Google for many hours before asking a question. > > Pier Paolo Grassi > > > Il giorno sab 17 dic 2022 alle ore 00:33 Ray Andrews > ha scritto: > > > On 2022-12-16 14:15, Bart Schaefer wrote: > > > > I'd appreciate a pointer to that definition, since apparently my PhD > > in Computer Science is from too long ago to have covered it. > > Ha!  Sometimes hairs need to be split, and Dominik is surely correct > that zsh and say C are very different, but to say that zsh isn't a > programing language will be a chore to sustain. > > Daniel: > > > You mean that you wrote foo[bar] and didn't realize that was > > a globbing syntax too?  zsh can't disable features because you don't > > know them. > > This stuff is all so fundamental that it couldn't change even if > everyone wanted it to.  Disable isn't the word I chose.  But there is > something very unfriendly about situations where you're doing > something > with an array index -- and it obvious at least to oneself that > this is a > string thing, and then zsh zealously applies filename expansions > to it > when it has nothing whatsoever to do with files.  I don't mind being > clobbered, that's part of learning the shell, still it isn't very > intuitive.  Anyway I've learned the protections.   But one can > want to > do some string globbing and still hope not to have anything to do > with > filenames. > > > --------------grILd5VeXExx0yzjjQa4mG2r Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: 8bit


On 2022-12-17 04:47, Pier Paolo Grassi wrote:
it certainly is to be said that, even if the shell implements all the basic programming constructs, it is meant for different objectives then those that are targeted by the things one most commonly calls "programming languages", and even among those there are many distinctions, so probably it wouldn't be so easy to establish an exact definition that includes only the "ideals" (whatever that means) programming languages and leaves everything else out. That being said, I think that one should accept the language for what it is and what is meant to be and do,and even if something would be awesome if it was engineered with  hindsight (like array expansion without empty string elision with a more same syntax, or by default) it should be wise to understand what the language is or is not before dipping too much one's arms and feets in it,

I agree.  One should know what to expect and what is possible.  But one's understanding of these things comes from banging up against the limitations.  My criticisms are not meant to be in a negative frame of mind, I'm just given to speculation on what might be improved, and often I'm not even correct.


reading the manual at least a couple of times front to bottom, since someone has put the effort to write it. At least I try to do it this way, I experiment a bit but then I try to read everything I can before resorting to ask for help, it seems only fair given that someone has to put aside whatever he is doing to answer me.

I will experiment and read and Google for many hours before asking a question. 



Pier Paolo Grassi


Il giorno sab 17 dic 2022 alle ore 00:33 Ray Andrews <rayandrews@eastlink.ca> ha scritto:

On 2022-12-16 14:15, Bart Schaefer wrote:
>
> I'd appreciate a pointer to that definition, since apparently my PhD
> in Computer Science is from too long ago to have covered it.

Ha!  Sometimes hairs need to be split, and Dominik is surely correct
that zsh and say C are very different, but to say that zsh isn't a
programing language will be a chore to sustain.

Daniel:

> You mean that you wrote foo[bar] and didn't realize that was
> a globbing syntax too?  zsh can't disable features because you don't
> know them.

This stuff is all so fundamental that it couldn't change even if
everyone wanted it to.  Disable isn't the word I chose.  But there is
something very unfriendly about situations where you're doing something
with an array index -- and it obvious at least to oneself that this is a
string thing, and then zsh zealously applies filename expansions to it
when it has nothing whatsoever to do with files.  I don't mind being
clobbered, that's part of learning the shell, still it isn't very
intuitive.  Anyway I've learned the protections.   But one can want to
do some string globbing and still hope not to have anything to do with
filenames.



--------------grILd5VeXExx0yzjjQa4mG2r--