From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.bugs Subject: bug#12895: 24.3.50; Replacement for flet Date: Thu, 15 Nov 2012 13:35:34 -0500 Message-ID: References: <87a9uj9efm.fsf@gmail.com> <87lie27vvd.fsf@gmail.com> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1353004590 18649 80.91.229.3 (15 Nov 2012 18:36:30 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Thu, 15 Nov 2012 18:36:30 +0000 (UTC) Cc: 12895@debbugs.gnu.org To: Antoine Levitt Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Thu Nov 15 19:36:41 2012 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1TZ4In-0008Lp-Fw for geb-bug-gnu-emacs@m.gmane.org; Thu, 15 Nov 2012 19:36:37 +0100 Original-Received: from localhost ([::1]:55920 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TZ4Id-0001ur-G8 for geb-bug-gnu-emacs@m.gmane.org; Thu, 15 Nov 2012 13:36:27 -0500 Original-Received: from eggs.gnu.org ([208.118.235.92]:49984) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TZ4IY-0001uf-RE for bug-gnu-emacs@gnu.org; Thu, 15 Nov 2012 13:36:25 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TZ4IV-0003T4-Or for bug-gnu-emacs@gnu.org; Thu, 15 Nov 2012 13:36:22 -0500 Original-Received: from debbugs.gnu.org ([140.186.70.43]:35588) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TZ4IV-0003Sz-LF for bug-gnu-emacs@gnu.org; Thu, 15 Nov 2012 13:36:19 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.72) (envelope-from ) id 1TZ4JB-0006Mn-Iy for bug-gnu-emacs@gnu.org; Thu, 15 Nov 2012 13:37:01 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Stefan Monnier Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 15 Nov 2012 18:37:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 12895 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 12895-submit@debbugs.gnu.org id=B12895.135300458124419 (code B ref 12895); Thu, 15 Nov 2012 18:37:01 +0000 Original-Received: (at 12895) by debbugs.gnu.org; 15 Nov 2012 18:36:21 +0000 Original-Received: from localhost ([127.0.0.1]:45837 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TZ4IW-0006Lm-IQ for submit@debbugs.gnu.org; Thu, 15 Nov 2012 13:36:20 -0500 Original-Received: from ironport2-out.teksavvy.com ([206.248.154.182]:46209) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TZ4IV-0006Ld-3Z; Thu, 15 Nov 2012 13:36:19 -0500 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Ai0FAG6Zu09sr+ZY/2dsb2JhbABEsEiDSYEIghUBAQQBViMFCws0EhQYDSSIHAW6CZBEA4hCmnGBWIMHgTga X-IronPort-AV: E=Sophos;i="4.75,637,1330923600"; d="scan'208";a="207701999" Original-Received: from 108-175-230-88.dsl.teksavvy.com (HELO pastel.home) ([108.175.230.88]) by ironport2-out.teksavvy.com with ESMTP/TLS/ADH-AES256-SHA; 15 Nov 2012 13:35:35 -0500 Original-Received: by pastel.home (Postfix, from userid 20848) id B3CC658BDA; Thu, 15 Nov 2012 13:35:34 -0500 (EST) In-Reply-To: <87lie27vvd.fsf@gmail.com> (Antoine Levitt's message of "Thu, 15 Nov 2012 16:01:58 +0100") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux) X-Spam-Score: 0.8 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list X-Spam-Score: 0.8 (/) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 140.186.70.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:66965 Archived-At: tags 12895 notabug thanks > Temporarily bind to PLACEs. This is the analogue of `let', but with > generalized variables > If it excludes overrides, I think it should say so explicitely. Right > now I'm led to think it's like let for functions, and I've been using > let for overriding just fine. letf and cl-letf do not exclude overrides: it only does overrides (well, pretty much, except if PLACE is a variable, in which case it's just like a let). But, indeed, the docstring of cl-flet was wrong since it said "Make temporary function definitions" whereas these are not temporarily but local. I just fixed it now, thank you. >> Such override should be done with an advice. > Unless I'm missing something easier, using an advice would be cumbersome > (define the advice, activate it, run the function, then deactivate the > advice, protecting for errors). Would you consider un-obsoleting flet? > It isn't deprecated by either cl-flet or cl-letf. Overriding a function is bad. It can mess things up and throw you majorly off-course when debugging the problem. So it's good if it's cumbersome. Check my recent patch to js.el to see how I replaced flet with advices. Stefan