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#20420: 25.0.50; eieio methods with optional arguments now fail Date: Sun, 26 Apr 2015 00:02:51 -0400 Message-ID: References: <87d22tpbqr.fsf@gmail.com> <878udhp0ay.fsf@gmail.com> <87sibonjz0.fsf@gmail.com> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1430021007 3664 80.91.229.3 (26 Apr 2015 04:03:27 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sun, 26 Apr 2015 04:03:27 +0000 (UTC) Cc: 20420@debbugs.gnu.org To: Vitalie Spinu Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Sun Apr 26 06:03:16 2015 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 1YmDmh-000722-0K for geb-bug-gnu-emacs@m.gmane.org; Sun, 26 Apr 2015 06:03:11 +0200 Original-Received: from localhost ([::1]:49830 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YmDmf-0004zo-TU for geb-bug-gnu-emacs@m.gmane.org; Sun, 26 Apr 2015 00:03:09 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:44251) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YmDmb-0004zi-SN for bug-gnu-emacs@gnu.org; Sun, 26 Apr 2015 00:03:06 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YmDmY-0005Pj-KD for bug-gnu-emacs@gnu.org; Sun, 26 Apr 2015 00:03:05 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:50305) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YmDmY-0005Pf-HH for bug-gnu-emacs@gnu.org; Sun, 26 Apr 2015 00:03:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1YmDmY-0005E1-Ao for bug-gnu-emacs@gnu.org; Sun, 26 Apr 2015 00:03:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Stefan Monnier Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 26 Apr 2015 04:03:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 20420 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 20420-submit@debbugs.gnu.org id=B20420.143002097620072 (code B ref 20420); Sun, 26 Apr 2015 04:03:02 +0000 Original-Received: (at 20420) by debbugs.gnu.org; 26 Apr 2015 04:02:56 +0000 Original-Received: from localhost ([127.0.0.1]:40081 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YmDmR-0005Df-Da for submit@debbugs.gnu.org; Sun, 26 Apr 2015 00:02:55 -0400 Original-Received: from pruche.dit.umontreal.ca ([132.204.246.22]:42036) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YmDmP-0005DV-47 for 20420@debbugs.gnu.org; Sun, 26 Apr 2015 00:02:54 -0400 Original-Received: from pastel.home (lechon.iro.umontreal.ca [132.204.27.242]) by pruche.dit.umontreal.ca (8.14.1/8.14.1) with ESMTP id t3Q42pKj008773; Sun, 26 Apr 2015 00:02:51 -0400 Original-Received: by pastel.home (Postfix, from userid 20848) id 6C8AA2CD4; Sun, 26 Apr 2015 00:02:51 -0400 (EDT) In-Reply-To: <87sibonjz0.fsf@gmail.com> (Vitalie Spinu's message of "Sat, 25 Apr 2015 20:25:39 +0200") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.50 (gnu/linux) X-NAI-Spam-Flag: NO X-NAI-Spam-Threshold: 5 X-NAI-Spam-Score: 0 X-NAI-Spam-Rules: 1 Rules triggered RV5287=0 X-NAI-Spam-Version: 2.3.0.9393 : core <5287> : inlines <2795> : streams <1428701> : uri <1915886> X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.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:102047 Archived-At: >> That tells me *how* you used it, not *where*. > I was using it in polymode package for a generic indentation > functionality: > https://github.com/vspinu/polymode/blob/master/polymode-methods.el#L530 [ After figuring out that the code now doesn't do that any more and seeing the old code which does do the "nasty" empty-args defmethod. ] I see, thanks. At least the "workaround" did not require more code, and is marginally more efficient to boot. Looking more closely at the way this was handled in the older EIEIO code, the semantics are pretty ugly, so it the fact that it worked is clearly an accident, and reproducing that exact semantics would be difficult. > Aha. Cool! I will have a look. Is there a more elaborate documentation > somewhere? No, it's more a wishlist item: add support for formal pseudo-arguments of the form "&context ( )". > Particularly I don't see "specializer" and "generalizer" > being properly defined anywhere. "Specializer" is used commonly in CLOS to refer to the "thing" that can be either a class type or (eql ). "Generalizer" is not standard and refers to a thing that takes a value (the actual argument) and finds its corresponding specializers (i.e. its type(s)). I took the term from an article that extended CLOS method-matching. cl-generic.el does not directly implement that article, but it's fairly similar. This said, adding support for &context shouldn't need to do very much with specializers and generalizers (more specifically, shouldn't require defining new specializers or generalizers). Stefan