9front - general discussion about 9front
 help / color / mirror / Atom feed
From: hiro <23hiro@gmail.com>
To: 9front@9front.org
Subject: Re: [9front] Re: commit 2f8a59f4b5bfe028c022855acc19666d69eed909
Date: Sat, 10 Jul 2021 09:25:48 +0200	[thread overview]
Message-ID: <CAFSF3XO8HG-R9QUyz58O9iAYxRZ-3aeB2g+xE_KbRRHNrir3Xw@mail.gmail.com> (raw)
In-Reply-To: <F39F896E-198A-4B9F-95E0-E42FB091F4A5@stanleylieber.com>

that is how every subshell works, yes.

the change regards delcaring a function in a way that it will
thereafter always become a subshell, regardless how it is run.

On 7/9/21, Stanley Lieber <sl@stanleylieber.com> wrote:
> On July 9, 2021 4:44:19 PM EDT, hiro <23hiro@gmail.com> wrote:
>>i finally found a workable example, but i had to troll the irc logs to find
>> it
>>
>>23:36:05 ori → ok, rc updated - now if you need early exits in
>>functions, 'fn foo @{...; exit; ...}
>>
>>
>>On 7/9/21, hiro <23hiro@gmail.com> wrote:
>>> the examples are all weird. i still do not understand what this allows
>>> you to do.
>>>
>>> On 7/9/21, Stanley Lieber <sl@stanleylieber.com> wrote:
>>>> On July 9, 2021 11:01:19 AM EDT, ori@eigenstate.org wrote:
>>>>>Quoth Stanley Lieber <sl@stanleylieber.com>:
>>>>>> On July 9, 2021 3:48:39 AM EDT, Anthony Martin <ality@pbrane.org>
>>>>>> wrote:
>>>>>> >> rc: add subshell-function syntax
>>>>>> >>
>>>>>> >> fn foo @{bar} is now equivalent to
>>>>>> >> fn foo {@{bar}}. As a side effect,
>>>>>> >> this disallows creating functions
>>>>>> >> named after keywords without first
>>>>>> >> quoting them.
>>>>>> >
>>>>>> >Respectfully, this is just wrong. @ is a
>>>>>> >unary operator. Repurposing it to define
>>>>>> >a new special kind of function is a bit
>>>>>> >much.
>>>>>> >
>>>>>> >What does this buy you over being explicit
>>>>>> >at the call site?
>>>>>> >
>>>>>> >	fn foo { bar }
>>>>>> >
>>>>>> >	@foo
>>>>>> >
>>>>>> >One color of function is enough. 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. But is it worth the backwards
>>>>>> >incompatibility?
>>>>>> >
>>>>>> >Thanks,
>>>>>> >  Anthony
>>>>>> >
>>>>>>
>>>>>> if we're introducing breaking changes to important programs like the
>>>>>> 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.)
>>>>>
>>>>>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.
>>>>>
>>>>>
>>>>
>>>> thanks. changes to rc are tricky since of all things we expect it to
>>>> behave
>>>> consistently from day to day. I do think I misunderstood the change
>>>> itself.
>>>> 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.
>>>>
>>>> sl
>>>>
>>>
>>
>
> wait, this will exit only the subshell and not the parent? that's useful for
> sure.
>
> sl
>

  reply	other threads:[~2021-07-10 10:15 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-07-09  7:48 Anthony Martin
2021-07-09 14:21 ` ori
2021-07-09 14:37 ` Stanley Lieber
2021-07-09 14:56   ` ori
2021-07-09 15:01   ` ori
2021-07-09 15:10     ` Stanley Lieber
2021-07-09 19:43       ` hiro
2021-07-09 20:44         ` hiro
2021-07-09 20:50           ` Stanley Lieber
2021-07-10  7:25             ` hiro [this message]
2021-07-10 14:16               ` Stanley Lieber
2021-08-27 15:07 ` ori
2021-09-01 19:16   ` Noam Preil

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAFSF3XO8HG-R9QUyz58O9iAYxRZ-3aeB2g+xE_KbRRHNrir3Xw@mail.gmail.com \
    --to=23hiro@gmail.com \
    --cc=9front@9front.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).