From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Neil Jerram Newsgroups: gmane.lisp.guile.devel Subject: Re: Backtrace and enhanced catch Date: Sat, 21 Jan 2006 11:26:02 +0000 Message-ID: <87r771g6ut.fsf@ossau.uklinux.net> References: <200511301616.22258.bkorb@gnu.org> <87wthpkyan.fsf@ossau.uklinux.net> <43B69F41.6030509@xs4all.nl> <87hd8pb8o7.fsf@ossau.uklinux.net> <87lkxy3abo.fsf@ossau.uklinux.net> <877j9i31gc.fsf@ossau.uklinux.net> <87acebhf1o.fsf@ossau.uklinux.net> <87hd84pnxk.fsf@laas.fr> <87mzhti17e.fsf@ossau.uklinux.net> <878xtca77p.fsf@laas.fr> NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: quoted-printable X-Trace: sea.gmane.org 1137848032 29204 80.91.229.2 (21 Jan 2006 12:53:52 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Sat, 21 Jan 2006 12:53:52 +0000 (UTC) Original-X-From: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Sat Jan 21 13:53:45 2006 Return-path: Envelope-to: guile-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1F0IFO-0002mS-M2 for guile-devel@m.gmane.org; Sat, 21 Jan 2006 13:53:39 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1F0IHv-0003zf-P5 for guile-devel@m.gmane.org; Sat, 21 Jan 2006 07:56:15 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1F0Hr7-0001SP-Jp for guile-devel@gnu.org; Sat, 21 Jan 2006 07:28:34 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1F0Hob-0000Mj-1l for guile-devel@gnu.org; Sat, 21 Jan 2006 07:26:01 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1F0Gxa-0000dQ-L5 for guile-devel@gnu.org; Sat, 21 Jan 2006 06:31:11 -0500 Original-Received: from [80.84.72.33] (helo=mail3.uklinux.net) by monty-python.gnu.org with esmtp (Exim 4.34) id 1F0H1x-0000ox-SZ for guile-devel@gnu.org; Sat, 21 Jan 2006 06:35:42 -0500 Original-Received: from laruns (host86-129-132-201.range86-129.btcentralplus.com [86.129.132.201]) by mail3.uklinux.net (Postfix) with ESMTP id 0E92F409FBD for ; Sat, 21 Jan 2006 11:28:32 +0000 (UTC) Original-Received: from laruns (laruns [127.0.0.1]) by laruns (Postfix) with ESMTP id C0EB99F929 for ; Sat, 21 Jan 2006 11:26:02 +0000 (GMT) Original-To: guile-devel@gnu.org In-Reply-To: <878xtca77p.fsf@laas.fr> ( =?iso-8859-1?q?Ludovic_Court=E8s's_message_of?= "Thu, 19 Jan 2006 10:38:02 +0100") User-Agent: Gnus/5.1007 (Gnus v5.10.7) Emacs/21.4 (gnu/linux) X-BeenThere: guile-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Developers list for Guile, the GNU extensibility library" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Errors-To: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.lisp.guile.devel:5605 Archived-At: ludovic.courtes@laas.fr (Ludovic Court=E8s) writes: > Yes, but internally, there is necessarily some form of `lazy-catch', Not exactly, no. > i.e., there is code that executes just after the exception was raised > and just before the stack is unwound. Yes, there is such code, but this is just part of what `lazy-catch' as a whole needs to do. > So it seems that `catch' is just hiding this away. `Hiding' is a loaded word. I would agree that `catch' is encapsulating the running of this code. The whole point of my analysis is that this is a good thing. >> (BTW, in connection with `guard', which was called `try' in the >> original draft of SRFI 34, I came across this email in the discussion >> archive: http://srfi.schemers.org/srfi-34/mail-archive/msg00013.html. >> This email concludes: >> >> Robust and portable code should only use the "try" form. >> >> for reasons connected to how dynamic state is handled that I think are >> similar to the reasoning in my analysis. >> >> If accepted, this conclusion leaves SRFI-34 incomplete, because >> try/guard provides no way of running something in the context of the >> original error.) > > Well, you still have `with-exception-handler', except that it must be > used carefully. When I wrote "If accepted", I meant "If you agree that `robust and portable code should only use the try form'", which implies that with-exception-handler should not be used. Thanks for your comments on this! Regards, Neil _______________________________________________ Guile-devel mailing list Guile-devel@gnu.org http://lists.gnu.org/mailman/listinfo/guile-devel