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=0.8 required=5.0 tests=DATE_IN_PAST_12_24 autolearn=no autolearn_force=no version=3.4.4 Received: (qmail 14981 invoked from network); 11 Jul 2021 10:15:03 -0000 Received: from 1ess.inri.net (216.126.196.35) by inbox.vuxu.org with ESMTPUTF8; 11 Jul 2021 10:15:03 -0000 Received: from 5ess.inri.net ([107.191.111.177]) by 1ess; Sat Jul 10 11:15:01 -0400 2021 Received: from [127.0.0.1] ([104.59.85.219]) by 5ess; Sat Jul 10 10:16:16 -0400 2021 Date: Sat, 10 Jul 2021 10:16:13 -0400 From: Stanley Lieber To: 9front@9front.org In-Reply-To: References: <270BEC567655102DE0C764820FA16F74@eigenstate.org> <4754C6E8-2D26-46FC-B1EB-44AECD8DC0B5@stanleylieber.com> Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: immutable ActivityPub blockchain cloud-aware self-signing element backend Subject: Re: [9front] Re: commit 2f8a59f4b5bfe028c022855acc19666d69eed909 Reply-To: 9front@9front.org Precedence: bulk On July 10, 2021 3:25:48 AM EDT, hiro <23hiro@gmail=2Ecom> wrote: >that is how every subshell works, yes=2E > >the change regards delcaring a function in a way that it will >thereafter always become a subshell, regardless how it is run=2E > >On 7/9/21, Stanley Lieber wrote: >> On July 9, 2021 4:44:19 PM EDT, hiro <23hiro@gmail=2Ecom> wrote: >>>i finally found a workable example, but i had to troll the irc logs to = find >>> it >>> >>>23:36:05 ori =E2=86=92 ok, rc updated - now if you need early exits in >>>functions, 'fn foo @{=2E=2E=2E; exit; =2E=2E=2E} >>> >>> >>>On 7/9/21, hiro <23hiro@gmail=2Ecom> wrote: >>>> the examples are all weird=2E i still do not understand what this all= ows >>>> you to do=2E >>>> >>>> On 7/9/21, Stanley Lieber wrote: >>>>> On July 9, 2021 11:01:19 AM EDT, ori@eigenstate=2Eorg wrote: >>>>>>Quoth Stanley Lieber : >>>>>>> On July 9, 2021 3:48:39 AM EDT, Anthony Martin >>>>>>> wrote: >>>>>>> >> rc: add subshell-function syntax >>>>>>> >> >>>>>>> >> fn foo @{bar} is now equivalent to >>>>>>> >> fn foo {@{bar}}=2E As a side effect, >>>>>>> >> this disallows creating functions >>>>>>> >> named after keywords without first >>>>>>> >> quoting them=2E >>>>>>> > >>>>>>> >Respectfully, this is just wrong=2E @ is a >>>>>>> >unary operator=2E Repurposing it to define >>>>>>> >a new special kind of function is a bit >>>>>>> >much=2E >>>>>>> > >>>>>>> >What does this buy you over being explicit >>>>>>> >at the call site? >>>>>>> > >>>>>>> > fn foo { bar } >>>>>>> > >>>>>>> > @foo >>>>>>> > >>>>>>> >One color of function is enough=2E What's >>>>>>> >next? >>>>>>> > >>>>>>> > fn foo !{ bar } >>>>>>> > >>>>>>> >to mean that foo always negates the exit >>>>>>> >status of its body? >>>>>>> > >>>>>>> >The new quoting requirement for functions >>>>>>> >named after keywords seems fine, on the >>>>>>> >other hand=2E But is it worth the backwards >>>>>>> >incompatibility? >>>>>>> > >>>>>>> >Thanks, >>>>>>> > Anthony >>>>>>> > >>>>>>> >>>>>>> if we're introducing breaking changes to important programs like t= he >>>>>>> shell, can we please at least post a warning on the mailing list? >>>>>> >>>>>>(caveat -- it's compatible unless you >>>>>>happen to be using functions named '@', >>>>>>'`', etc -- which, again, you >>>>>>can't use without quoting=2E) >>>>>> >>>>>>I don't think most people even realize >>>>>>that it's possible to name an rc function: >>>>>> >>>>>> '@{this is a valid} function name!' >>>>>> >>>>>>Either way, noted -- I'll post next time=2E >>>>>> >>>>>> >>>>> >>>>> thanks=2E changes to rc are tricky since of all things we expect it = to >>>>> behave >>>>> consistently from day to day=2E I do think I misunderstood the chang= e >>>>> itself=2E >>>>> I've been running sysupdate from cron and piping the output to an >>>>> e-mail >>>>> to >>>>> myself -- the commit messages as printed by sysupdate are truncated= =2E >>>>> >>>>> sl >>>>> >>>> >>> >> >> wait, this will exit only the subshell and not the parent? that's usefu= l for >> sure=2E >> >> sl >> > maybe we can get tom duff to update the rc paper to reflect our changes=2E sl