Subject: Re: prog@ From: Erik Naggum <erik@naggum.no> Date: 14 Nov 2002 18:58:52 +0000 Newsgroups: comp.lang.lisp Message-ID: <3246289132162826@naggum.no> * Pascal Costanza <costanza@web.de> | Thanks for your comments. Well, I have seen the following idiom. | | (defmethod m :around (...) | (multiple-value-prog1 | (progn | (...) | (call-next-method)) | (...))) | | I find this rather ugly. So what I want to have is something like that. | | (defmethod m :around (...) | (prog@ | (...) | @(call-next-method) | (...))) | | I think this is somewhat nicer. However, you have to admit that this calls | for generalization. ;-) (defmethod m :around (...) (...) (multiple-value-prog1 (call-next-method) (...))) I fail to see the problem. Elsewhere, a simple `let´ form that captures the value and returning is value at the end seems to do a much better job at this: (...) (let (($ ...)) (... $ ...) $) If your value has no natural name, using a symbol like $ should be OK, but you should really think of a good name for the value if it is used elsewhere in the function. -- Erik Naggum, Oslo, Norway Act from reason, and failure makes you rethink and study harder. Act from faith, and failure makes you blame someone and push harder.