Re: 251 vs. 245
Sergei Egorov
(01 Dec 2023 23:43 UTC)
|
Re: 251 vs. 245
Per Bothner
(02 Dec 2023 01:54 UTC)
|
Re: Re: 251 vs. 245
Sergei Egorov
(02 Dec 2023 02:23 UTC)
|
Re: Re: 251 vs. 245
Sergei Egorov
(02 Dec 2023 02:28 UTC)
|
Re: 251 vs. 245
Per Bothner
(02 Dec 2023 06:11 UTC)
|
Re: Re: 251 vs. 245
Sergei Egorov
(02 Dec 2023 07:12 UTC)
|
Re: 251 vs. 245
Daphne Preston-Kendal
(02 Dec 2023 09:54 UTC)
|
Re: 251 vs. 245
Vladimir Nikishkin
(02 Dec 2023 12:30 UTC)
|
Re: 251 vs. 245
Marc Nieper-Wißkirchen
(02 Dec 2023 12:33 UTC)
|
Re : Re: 251 vs. 245
Amirouche
(04 Dec 2023 08:36 UTC)
|
Re: Re : Re: 251 vs. 245
Marc Nieper-Wißkirchen
(04 Dec 2023 08:42 UTC)
|
Re : Re: Re : Re: 251 vs. 245
Amirouche
(04 Dec 2023 09:27 UTC)
|
Re: 251 vs. 245
Daphne Preston-Kendal
(04 Dec 2023 09:57 UTC)
|
Re: Re : Re: 251 vs. 245 Vladimir Nikishkin (04 Dec 2023 09:50 UTC)
|
Re: 251 vs. 245
Daphne Preston-Kendal
(04 Dec 2023 10:24 UTC)
|
Re: 251 vs. 245
Marc Nieper-Wißkirchen
(04 Dec 2023 10:48 UTC)
|
Re: 251 vs. 245
Daphne Preston-Kendal
(04 Dec 2023 11:03 UTC)
|
Re: 251 vs. 245
Lassi Kortela
(04 Dec 2023 11:24 UTC)
|
Re: 251 vs. 245
Sergei Egorov
(04 Dec 2023 11:33 UTC)
|
Re: 251 vs. 245
Marc Nieper-Wißkirchen
(04 Dec 2023 12:07 UTC)
|
Re: 251 vs. 245
Sergei Egorov
(04 Dec 2023 12:44 UTC)
|
Re: 251 vs. 245
Marc Nieper-Wißkirchen
(04 Dec 2023 12:52 UTC)
|
Re: Re : Re: 251 vs. 245
Amirouche
(04 Dec 2023 21:59 UTC)
|
Apologies for not responding at once. I tried to write down an obvious (seemingly) example of why 251 would be better than 245, but when I invested some more time into it, it became less obvious. In fact, while the benefit of running some type checks and debugging printing at the beginning of the function is unquestionable, I am not even sure that letrec* is the correct model for the following definitions. Maybe lectrec (without a *) would be a better choice. I need to think more about it, I am sorry. In any case, I certainly don't like something like this: (let ((x 0) (define (set-x!) (set! x 1)) (long-long-long function) (long-long-long function) (long-long-long function) (long-long-long function) (long-long-long function) (long-long-long function) (long-long-long function) (long-long-long function) (long-long-long function) (long-long-long function) (long-long-long function) (long-long-long function) (long-long-long function) (long-long-long function) (long-long-long function) (long-long-long function) (define x 1)) where set-x! would be mutating the bottom x if the bottom define is present, or the top one if it is not. Yeah, don't write code this badly, but "don't do something" is a bad advice in programming. On Mon, 4 Dec 2023 at 16:42, Marc Nieper-Wißkirchen <xxxxxx@gmail.com> wrote: > > Am Mo., 4. Dez. 2023 um 09:36 Uhr schrieb Amirouche <xxxxxx@hyper.dev>: >> >> >> >> >> >> Le sam. 2 déc. 2023 à 13:29, Vladimir Nikishkin <xxxxxx@gmail.com> a écrit : >> >> I do think that the srfi 251 semantic is more consistent with the >> Scheme spirit, in the sense of the definitions being "simultaneous". >> >> Same here. > > > Are you then able to explain what this is supposed to mean? > > >> >> In fact, I was very surprised to see 245 being proposed. >> >> On Sat, 2 Dec 2023 at 17:54, Daphne Preston-Kendal <xxxxxx@nonceword.org> wrote: >> > >> > On 2 Dec 2023, at 02:54, Per Bothner <xxxxxx@bothner.com> wrote: >> > >> > > Also consider: >> > > >> > > (let ((x 10)) >> > > (display "the result is: ") >> > > (display x) >> > > (define x 42)) >> > > (newline)) >> > > >> > > I believe the result here should be undefined - but *not* 10. >> > >> > Indeed, this is An Error in SRFI 245. >> > >> > >> > Daphne >> > >> >> >> -- >> Yours sincerely, Vladimir Nikishkin >> (Sent from GMail web interface.) -- Yours sincerely, Vladimir Nikishkin (Sent from GMail web interface.)