From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Chris Vine Newsgroups: gmane.lisp.guile.user Subject: Re: "Missing" libraries/concepts found in other languages/ecosystems? Date: Sun, 12 Jul 2020 00:09:34 +0100 Message-ID: <20200712000934.9ffbd2a29c74df7a22d8629f@gmail.com> References: <20200710112109.b2ffa630699452541835924b@gmail.com> <14a24bd8-2664-c7bf-eff8-ca3f4e068ef8@posteo.de> <20200711111359.acacd7d4a6b328bab44ba11e@gmail.com> <20200711233918.3355c443aaa8d44de772e572@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="1888"; mail-complaints-to="usenet@ciao.gmane.io" To: guile-user@gnu.org Original-X-From: guile-user-bounces+guile-user=m.gmane-mx.org@gnu.org Sun Jul 12 01:10:12 2020 Return-path: Envelope-to: guile-user@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1juOdH-0000IP-6K for guile-user@m.gmane-mx.org; Sun, 12 Jul 2020 01:10:11 +0200 Original-Received: from localhost ([::1]:50094 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1juOdB-00015A-5c for guile-user@m.gmane-mx.org; Sat, 11 Jul 2020 19:10:05 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:59854) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1juOd1-000150-2i for guile-user@gnu.org; Sat, 11 Jul 2020 19:09:55 -0400 Original-Received: from mail-wm1-x330.google.com ([2a00:1450:4864:20::330]:55204) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1juOcz-00047W-8p for guile-user@gnu.org; Sat, 11 Jul 2020 19:09:54 -0400 Original-Received: by mail-wm1-x330.google.com with SMTP id o8so9655586wmh.4 for ; Sat, 11 Jul 2020 16:09:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=date:from:to:subject:message-id:in-reply-to:references:mime-version :content-transfer-encoding; bh=WJm1eFRF8s5LEtjhWXmdKxraN7ZmSgmi4sv+B0ZIQgk=; b=DRGJnCE+wn38N7L3l7fMkgy2ZPOKL39nZGLXa95g7TUOvp2l5ftWY05pmEgKSRadjd 2s8uBq0c5cxQx5UtTl/KtvuGBZg8l/kPuDTQiqIaTMvfXU9oOVaCnAvUY+8mPzsX/gZI 37satLHhHhKrniDegXblIGrZ25kAJufpp7bm8zgT2s/fDghOy49B6pIQVXHCpgSEzwUj bfCMnLtEEOKMmenMxudHuiskR7aQ6EtxNdApDuWtK5F6u1aNC4ULUUKjj3xqCN5By8LV dPqPEAnJBnJeq0tV2KqNGaG++GYnKS12d4OTyZezU/z3oKfiNUkQd8fg5E4fv+lJEagt ySmg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:subject:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=WJm1eFRF8s5LEtjhWXmdKxraN7ZmSgmi4sv+B0ZIQgk=; b=gFLBV5aykCT4PgLTTAew/6Gni1qE37FSWoEz83daxyZe6vHR1OaMDEcyNBRonC0NQz ZgCC/kqyGkuhZYfgAsWMWm+TZCPrZQu2D7koLAAuZp5nZABYw2iVA0DWo0qun8oG+Uiu yQ8pfaUxJNpfwMJZfOQhVQQ+pgTsstfNLENLHwYc4zzmk+DajA7Y+MYshOHyLlv5xXco Fqw15O5oKjzEcJ//HJ3s9k6akIRY7ahdeJulnZtBlbgg1aKu5ZNaL3IdZY4904t5DjNw SZTmK1JKtbxJ7Z+CZwx4X4pzfLt8TLwi1V/56p4TQOROncgUhBEoQ4Fz0pG7reCUoIrE LN6g== X-Gm-Message-State: AOAM530GG5MKWDw79RhFoh718cnmVgLB+NgsdGB5U71jHjD95eXvYgF8 qrPIrGSWjPhP5oFKMWZ5hif7KptT X-Google-Smtp-Source: ABdhPJwIOO+iheAKpZCoyyKBHGwk/TxL/FunKNdORvAxtCEF7dm8EEx/r7ygNfNFGMFItxzA/9JdcA== X-Received: by 2002:a1c:dcd5:: with SMTP id t204mr11441263wmg.17.1594508991422; Sat, 11 Jul 2020 16:09:51 -0700 (PDT) Original-Received: from dell.homenet ([84.93.37.204]) by smtp.gmail.com with ESMTPSA id j14sm16806267wrs.75.2020.07.11.16.09.50 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 11 Jul 2020 16:09:50 -0700 (PDT) Original-Received: from dell.homenet (localhost [127.0.0.1]) by dell.homenet (Postfix) with SMTP id 174B34241D6 for ; Sun, 12 Jul 2020 00:09:34 +0100 (BST) In-Reply-To: X-Mailer: Sylpheed 3.7.0 (GTK+ 2.24.32; x86_64-unknown-linux-gnu) Received-SPF: pass client-ip=2a00:1450:4864:20::330; envelope-from=vine35792468@gmail.com; helo=mail-wm1-x330.google.com X-detected-operating-system: by eggs.gnu.org: No matching host in p0f cache. That's all we know. X-Spam_score_int: -17 X-Spam_score: -1.8 X-Spam_bar: - X-Spam_report: (-1.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: guile-user@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: General Guile related discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guile-user-bounces+guile-user=m.gmane-mx.org@gnu.org Original-Sender: "guile-user" Xref: news.gmane.io gmane.lisp.guile.user:16668 Archived-At: On Sat, 11 Jul 2020 18:41:34 -0400 John Cowan wrote: > On Sat, Jul 11, 2020 at 6:39 PM Chris Vine wrote: > > On Sat, 11 Jul 2020 14:20:22 -0400 > > John Cowan wrote: > > > On Sat, Jul 11, 2020 at 6:14 AM Chris Vine > > 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"?