unofficial mirror of guile-user@gnu.org 
 help / color / mirror / Atom feed
From: Chris Vine <vine35792468@gmail.com>
To: guile-user@gnu.org
Subject: Re: "Missing" libraries/concepts found in other languages/ecosystems?
Date: Sun, 12 Jul 2020 00:09:34 +0100	[thread overview]
Message-ID: <20200712000934.9ffbd2a29c74df7a22d8629f@gmail.com> (raw)
In-Reply-To: <CAD2gp_T3mD2bXZ3+UhNRf6j2U-6SLJ=aNQEZYvED=wgToMPNqg@mail.gmail.com>

On Sat, 11 Jul 2020 18:41:34 -0400
John Cowan <cowan@ccil.org> wrote:
> On Sat, Jul 11, 2020 at 6:39 PM Chris Vine <vine35792468@gmail.com> wrote:
> > On Sat, 11 Jul 2020 14:20:22 -0400
> > John Cowan <cowan@ccil.org> wrote:
> > > On Sat, Jul 11, 2020 at 6:14 AM Chris Vine <vine35792468@gmail.com>
> > wrote:
> > >
> > > > (To answer the question in your
> > > > following email, continuable exceptions are in some sense analogous to
> > > > common lisp restarts.)
> > >
> > > Continuable and non-continuable in Scheme are exactly like CL raise and
> > > error (and its variants), except that the machinery is different.
> > Restarts
> > > are another matter, independent of the condition system (though often
> > > considered with it).  I have a pre-SRFI for them at <
> > > https://github.com/johnwcowan/r7rs-work/blob/master/RestartsCowan.md>,
> > > similar to but simpler than the CL restart system, and using first-class
> > > restarts.  It currently lacks restart-case.
> >
> > I am not an expert on CL so can you provide me with the hyperspec
> > reference to CL 'RAISE'?  (I know about CL 'ERROR' and 'SIGNAL'.)
> >
> > [snip]
> > > > R6RS/R7RS's guard form is a wrapper for this which also
> > > > incorporates a cond form to enable different exception types to be
> > > > handled by different handlers.
> > > >
> > >
> > > Is the intention to provide `guard` in Guile 3.x?
> >
> > It's been in guile for as long as I can remember (at least since 2.0).
>
> Sorry, I meant SIGNAL, not RAISE, in CL.  I'm glad Guile supports `guard`.

So when you said "continuable and non-continuable in Scheme are exactly
like CL [signal] and error (and its variants)" are you then saying that
SIGNAL == continuable (ie raise-continuable in R6RS) and ERROR ==
non-continuable (ie raise in R6RS)?  If not, can you re-express what
you were intending to say?

In what way do you say that continuable exceptions are not in some sense
analogous to common lisp restarts (noting the "in some sense"?



  reply	other threads:[~2020-07-11 23:09 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <mailman.75.1594224014.21222.guile-user@gnu.org>
2020-07-08 18:22 ` "Missing" libraries/concepts found in other languages/ecosystems? Zelphir Kaltstahl
2020-07-09 18:12   ` Leo Butler
2020-07-09 19:34     ` Zelphir Kaltstahl
2020-07-10  7:39   ` Aleix Conchillo Flaqué
2020-07-10  8:14     ` Alex Sassmannshausen
2020-07-10  8:49   ` Catonano
2020-07-10 10:21     ` Chris Vine
2020-07-10 11:20       ` Catonano
2020-07-11  0:19         ` Zelphir Kaltstahl
2020-07-11  0:34           ` Zelphir Kaltstahl
2020-07-11 10:14             ` Chris Vine
2020-07-11 13:45               ` Stefan Israelsson Tampe
2020-07-11 14:46             ` Linus Björnstam
2020-07-11 10:13           ` Chris Vine
2020-07-11 18:20             ` John Cowan
2020-07-11 22:39               ` Chris Vine
2020-07-11 22:41                 ` John Cowan
2020-07-11 23:09                   ` Chris Vine [this message]
2020-07-12  1:52                     ` John Cowan
2020-07-12 20:26                       ` Chris Vine
2020-07-13 10:10                 ` Chris Vine
2020-07-12 16:08             ` Catonano
2020-07-12 16:10               ` Catonano
2020-07-12 17:46               ` John Cowan
2020-07-12 19:14               ` Chris Vine
2020-07-12 19:32                 ` Chris Vine
2020-07-14 10:32                   ` Catonano
2020-07-14 11:06                     ` Catonano
2020-07-14 16:21                     ` Chris Vine
2020-07-12 20:33               ` Zelphir Kaltstahl
2020-07-08  7:38 Simen Endsjø
2020-07-08  8:15 ` Vladimir Zhbanov
2020-07-08 10:08 ` Catonano
2020-07-08 11:29 ` Chris Vine
2020-07-10 12:15 ` Christopher Lam
2020-07-10 15:52   ` Chris Vine

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

  List information: https://www.gnu.org/software/guile/

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

  git send-email \
    --in-reply-to=20200712000934.9ffbd2a29c74df7a22d8629f@gmail.com \
    --to=vine35792468@gmail.com \
    --cc=guile-user@gnu.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 read-only IMAP folder(s) and NNTP newsgroup(s).