New draft (#8) of and new "last call" for SRFI 189: Maybe and Either: optional container types Arthur A. Gleckler 02 Jul 2020 05:56 UTC
Re: New draft (#8) of and new "last call" for SRFI 189: Maybe and Either: optional container types Shiro Kawai 02 Jul 2020 12:50 UTC
Re: New draft (#8) of and new "last call" for SRFI 189: Maybe and Either: optional container types John Cowan 02 Jul 2020 13:19 UTC
Re: New draft (#8) of and new "last call" for SRFI 189: Maybe and Either: optional container types Marc Nieper-Wißkirchen 07 Jul 2020 14:23 UTC
Re: New draft (#8) of and new "last call" for SRFI 189: Maybe and Either: optional container types John Cowan 07 Jul 2020 20:32 UTC
Re: New draft (#8) of and new "last call" for SRFI 189: Maybe and Either: optional container types Marc Nieper-Wißkirchen 08 Jul 2020 14:27 UTC
Re: New draft (#8) of and new "last call" for SRFI 189: Maybe and Either: optional container types Wolfgang Corcoran-Mathe 08 Jul 2020 19:47 UTC
Re: New draft (#8) of and new "last call" for SRFI 189: Maybe and Either: optional container types Marc Nieper-Wißkirchen 08 Jul 2020 20:21 UTC
Re: New draft (#8) of and new "last call" for SRFI 189: Maybe and Either: optional container types John Cowan 09 Jul 2020 04:32 UTC
Re: New draft (#8) of and new "last call" for SRFI 189: Maybe and Either: optional container types Marc Nieper-Wißkirchen 09 Jul 2020 09:30 UTC
Re: New draft (#8) of and new "last call" for SRFI 189: Maybe and Either: optional container types John Cowan 10 Jul 2020 14:05 UTC
Re: New draft (#8) of and new "last call" for SRFI 189: Maybe and Either: optional container types Marc Nieper-Wißkirchen 10 Jul 2020 14:39 UTC
Re: New draft (#8) of and new "last call" for SRFI 189: Maybe and Either: optional container types Wolfgang Corcoran-Mathe 10 Jul 2020 17:30 UTC
Re: New draft (#8) of and new "last call" for SRFI 189: Maybe and Either: optional container types Marc Nieper-Wißkirchen 10 Jul 2020 17:50 UTC
Re: New draft (#8) of and new "last call" for SRFI 189: Maybe and Either: optional container types Wolfgang Corcoran-Mathe 11 Jul 2020 15:22 UTC
Re: New draft (#8) of and new "last call" for SRFI 189: Maybe and Either: optional container types Marc Nieper-Wißkirchen 11 Jul 2020 15:30 UTC
Re: New draft (#8) of and new "last call" for SRFI 189: Maybe and Either: optional container types Wolfgang Corcoran-Mathe 11 Jul 2020 16:17 UTC
Re: New draft (#8) of and new "last call" for SRFI 189: Maybe and Either: optional container types Alex Shinn 11 Jul 2020 22:20 UTC
Re: New draft (#8) of and new "last call" for SRFI 189: Maybe and Either: optional container types Marc Nieper-Wißkirchen 11 Jul 2020 22:29 UTC
Re: New draft (#8) of and new "last call" for SRFI 189: Maybe and Either: optional container types Wolfgang Corcoran-Mathe 12 Jul 2020 03:35 UTC
Re: New draft (#8) of and new "last call" for SRFI 189: Maybe and Either: optional container types Marc Nieper-Wißkirchen 11 Jul 2020 16:33 UTC
Re: New draft (#8) of and new "last call" for SRFI 189: Maybe and Either: optional container types John Cowan 11 Jul 2020 18:44 UTC
Re: New draft (#8) of and new "last call" for SRFI 189: Maybe and Either: optional container types Marc Nieper-Wißkirchen 11 Jul 2020 19:26 UTC
Re: New draft (#8) of and new "last call" for SRFI 189: Maybe and Either: optional container types Arthur A. Gleckler 11 Jul 2020 19:59 UTC
Re: New draft (#8) of and new "last call" for SRFI 189: Maybe and Either: optional container types Marc Nieper-Wißkirchen 11 Jul 2020 20:06 UTC
Re: New draft (#8) of and new "last call" for SRFI 189: Maybe and Either: optional container types Arthur A. Gleckler 11 Jul 2020 20:08 UTC
Re: New draft (#8) of and new "last call" for SRFI 189: Maybe and Either: optional container types Marc Nieper-Wißkirchen 14 Jul 2020 09:13 UTC
Re: New draft (#8) of and new "last call" for SRFI 189: Maybe and Either: optional container types John Cowan 14 Jul 2020 21:15 UTC
Re: New draft (#8) of and new "last call" for SRFI 189: Maybe and Either: optional container types Alex Shinn 15 Jul 2020 00:07 UTC

Re: New draft (#8) of and new "last call" for SRFI 189: Maybe and Either: optional container types Marc Nieper-Wißkirchen 11 Jul 2020 15:30 UTC

Am Sa., 11. Juli 2020 um 17:22 Uhr schrieb Wolfgang Corcoran-Mathe
<xxxxxx@sigwinch.xyz>:
>
> On 2020-07-10 16:39 +0200, Marc Nieper-Wißkirchen wrote:
> > The following tests pass:
> >
> > [snip]
> >
> >   (check (either= eqv? (with-exception-handler
> >                            (lambda (x)
> >                              (+ 1 x))
> >                         (lambda ()
> >                            (either-guard string? (+ 2 (raise-continuable 39)))))
> >                  (right 42))
> >      => #t))
>
> Thanks very much for the implementation and the tests.
>
> This final test causes an "exception handler returned" error on Chibi
> when either->exception / either-guard is implemented with guard.  If
> I'm reading R7 right, this is to be expected, as guard always invokes
> raise if none of its clauses succeed.  Thus, the continuation is lost.

Chibi is wrong here. The history is as follows:

1) In the R6RS document, when no clause is fulfilled a non-continuable
exception is raised.
2) As this was a mistake, it was corrected in an erratum to R6RS so
that a continuable exception is raised.
3) In the R7RS document, the correct version of R6RS is used.
4) Someone came along and saw that the R7RS version differed from the
(original) R6RS version, so an erratum was issued for R7RS (people had
forgotten about 2)).
5) I filed a bug report with Chibi, which since then implements the
miscorrected version of R7RS.
6) Someone saw that the original R7RS version was the intended version
of R6RS and so the erratum of 4) was taken back.

So we are still missing:

7) Chibi reverts
https://github.com/ashinn/chibi-scheme/commit/28148e52b7f178cc4336b775bdc14dd6adbc0330.

Do this in your local copy of Chibi and the test should pass. (I've
put Alex in CC.)

Marc