Unwind-protect
Marc Nieper-Wißkirchen
(09 Oct 2022 09:56 UTC)
|
Re: Unwind-protect
Shiro Kawai
(09 Oct 2022 10:41 UTC)
|
Re: Unwind-protect
Marc Nieper-Wißkirchen
(09 Oct 2022 11:21 UTC)
|
Re: Unwind-protect
Shiro Kawai
(09 Oct 2022 12:46 UTC)
|
Re: Unwind-protect
Marc Nieper-Wißkirchen
(09 Oct 2022 13:07 UTC)
|
Re: Unwind-protect
Shiro Kawai
(09 Oct 2022 13:26 UTC)
|
Re: Unwind-protect
Marc Nieper-Wißkirchen
(09 Oct 2022 13:58 UTC)
|
Re: Unwind-protect
Shiro Kawai
(09 Oct 2022 22:50 UTC)
|
Re: Unwind-protect
Marc Nieper-Wißkirchen
(10 Oct 2022 05:57 UTC)
|
Re: Unwind-protect
Marc Nieper-Wißkirchen
(10 Oct 2022 07:24 UTC)
|
Re: Unwind-protect
Shiro Kawai
(10 Oct 2022 07:25 UTC)
|
Re: Unwind-protect
Marc Nieper-Wißkirchen
(10 Oct 2022 07:39 UTC)
|
Re: Unwind-protect
Shiro Kawai
(10 Oct 2022 08:57 UTC)
|
Re: Unwind-protect
Marc Nieper-Wißkirchen
(10 Oct 2022 08:59 UTC)
|
Re: Unwind-protect
John Cowan
(09 Oct 2022 15:03 UTC)
|
Re: Unwind-protect
Marc Nieper-Wißkirchen
(09 Oct 2022 15:13 UTC)
|
Re: Unwind-protect Marc Nieper-Wißkirchen (09 Oct 2022 15:39 UTC)
|
Re: Unwind-protect
Marc Nieper-Wißkirchen
(09 Oct 2022 16:13 UTC)
|
Re: Unwind-protect
Lassi Kortela
(09 Oct 2022 15:41 UTC)
|
Re: Unwind-protect
Marc Nieper-Wißkirchen
(09 Oct 2022 16:11 UTC)
|
Re: Unwind-protect
Marc Nieper-Wißkirchen
(28 Oct 2022 11:08 UTC)
|
Re: Unwind-protect
Vincent Manis
(28 Oct 2022 18:53 UTC)
|
Re: Unwind-protect
Marc Nieper-Wißkirchen
(28 Oct 2022 18:58 UTC)
|
Re: Unwind-protect
Vincent Manis
(28 Oct 2022 19:14 UTC)
|
Re: Unwind-protect
Marc Nieper-Wißkirchen
(28 Oct 2022 19:28 UTC)
|
Re: Unwind-protect
Arthur A. Gleckler
(28 Oct 2022 19:31 UTC)
|
PS Even without the multiple cleanup-form extension, I shouldn't have coded (lambda () <expr>) in the macro text. One should always code this like (lambda () (values) <expr>) or even better (lambda () (values <expr>)) so that an error is likely to be reported when a non-expression is provided for <expr>. Am So., 9. Okt. 2022 um 17:13 Uhr schrieb Marc Nieper-Wißkirchen <xxxxxx@gmail.com>: > > Am So., 9. Okt. 2022 um 17:03 Uhr schrieb John Cowan <xxxxxx@ccil.org>: > > >> Thanks; with my definition, I would have to code it like > >> (unwind-protect protected-form (begin (values) cleanup-form ...)) as > >> otherwise definitions would be allowed by the definition making it too > >> easy to write non-portable code. > > > > > > Eh? `Begin` doesn't allow declarations; only `lambda` and the `let` family do. > > My proposed macro has > > (lambda () > <cleanup-form>) > > as a subform. Expanding a begin in this context would have the > meaning of the first form of begin in section 4.2.3 of R7RS ([1]). > > -- > > [1] In fact, the first form of begin should probably not have been > listed in this section at all but somewhere else because it is not an > expression form.