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: srfi-18 requirements Date: Tue, 04 Dec 2007 22:29:31 +0000 Message-ID: <87y7caozzo.fsf@ossau.uklinux.net> References: <2bc5f8210710101854m1254160ei451026182b87e767@mail.gmail.com> <87lka8pvv3.fsf@laas.fr> <2bc5f8210710120831q5c90dcfes930595fa3eb16a77@mail.gmail.com> <2bc5f8210710151526t6345200ao997988c1877e8cce@mail.gmail.com> <4713EB20.3080608@member.fsf.org> <2bc5f8210710151547l5e245ed1ucaf07e9006e95387@mail.gmail.com> <2bc5f8210710290737j32fe7b1s86aaa7e084bb69b6@mail.gmail.com> <87ve7mmdpl.fsf@chbouib.org> <2bc5f8210711302108g12542615j2371d307a873d810@mail.gmail.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: ger.gmane.org 1196807392 11717 80.91.229.12 (4 Dec 2007 22:29:52 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 4 Dec 2007 22:29:52 +0000 (UTC) Cc: =?iso-8859-1?Q?Ludovic_Court=E8s?= , guile-devel@gnu.org To: "Julian Graham" Original-X-From: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Tue Dec 04 23:29:59 2007 Return-path: Envelope-to: guile-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1IzgH8-0004Rl-Es for guile-devel@m.gmane.org; Tue, 04 Dec 2007 23:29:58 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IzgGr-0000CF-Sc for guile-devel@m.gmane.org; Tue, 04 Dec 2007 17:29:41 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IzgGp-0000Aa-Av for guile-devel@gnu.org; Tue, 04 Dec 2007 17:29:39 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IzgGo-000097-LD for guile-devel@gnu.org; Tue, 04 Dec 2007 17:29:38 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IzgGo-00008h-Hy for guile-devel@gnu.org; Tue, 04 Dec 2007 17:29:38 -0500 Original-Received: from mail3.uklinux.net ([80.84.72.33]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IzgGj-0003E3-Ob; Tue, 04 Dec 2007 17:29:34 -0500 Original-Received: from arudy (host86-145-183-175.range86-145.btcentralplus.com [86.145.183.175]) by mail3.uklinux.net (Postfix) with ESMTP id 080411F78C1; Tue, 4 Dec 2007 22:29:32 +0000 (GMT) Original-Received: from laruns (unknown [192.168.0.10]) by arudy (Postfix) with ESMTP id 781933800A; Tue, 4 Dec 2007 22:29:31 +0000 (GMT) In-Reply-To: <2bc5f8210711302108g12542615j2371d307a873d810@mail.gmail.com> (Julian Graham's message of "Sat, 1 Dec 2007 00:08:40 -0500") User-Agent: Gnus/5.110006 (No Gnus v0.6) Emacs/21.4 (gnu/linux) X-detected-kernel: by monty-python.gnu.org: Linux 2.4-2.6 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:6913 Archived-At: "Julian Graham" writes: > Hi Ludovic, > > I'm almost finished making the changes -- in fact, I've got everything > fixed except for this one: > >> I'd use pairs or records for exception objects rather than just symbols >> since symbols can always be forged. They can't be forged if you use a non-interned symbol: (make-symbol "srfi-18"). I had this in mind, for the same reason, for srfi-34.scm, I'm not sure now why that didn't happen. Possibly because I wasn't completely sure whether it was the Right Thing to exclude someone doing: (catch 'srfi-34 (lambda () ... (raise obj) ...) (lambda (key obj) ...)) >> So we'd have, e.g.: >> >> (define uncaught-exception? >> (let ((exception-type (cons 'uncaught-exception #f))) >> (lambda (obj) >> (and (pair? obj) >> (eq? (car obj) exception-type))))) > > The thing is, I can't throw with a key that's not a symbol. I've been > trying to rig up something using SRFI-34-style exceptions (key = > 'srfi-34, args = anything) -- provided I can make that work, would > that be okay? It's a bit of pain that srfi-18 doesn't refer forward to srfi-34/35. Obviously the exception system of srfi-18 is very _like_ that of srfi-34/35, but srfi-18 doesn't say whether its exceptions have to be implemented using srfi-34/35. I guess that doesn't actually matter, though. srfi-18 simply requires its exception primitives to be implemented somehow. If it works semantically for them to be implemented using srfi-34/35, I think it would make good sense for us to do that. Regards, Neil _______________________________________________ Guile-devel mailing list Guile-devel@gnu.org http://lists.gnu.org/mailman/listinfo/guile-devel