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: Mon, 27 Apr 2015 00:43:20 -0400 Message-ID: References: <87d22tpbqr.fsf@gmail.com> <878udhp0ay.fsf@gmail.com> <87sibonjz0.fsf@gmail.com> <87vbgjm74o.fsf@gmail.com> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1430109864 7986 80.91.229.3 (27 Apr 2015 04:44:24 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 27 Apr 2015 04:44:24 +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 Mon Apr 27 06:44:14 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 1Ymatu-0006FA-Jz for geb-bug-gnu-emacs@m.gmane.org; Mon, 27 Apr 2015 06:44:10 +0200 Original-Received: from localhost ([::1]:53012 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Ymatt-0003Cp-UO for geb-bug-gnu-emacs@m.gmane.org; Mon, 27 Apr 2015 00:44:09 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:56018) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Ymatq-0003Ck-K7 for bug-gnu-emacs@gnu.org; Mon, 27 Apr 2015 00:44:07 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Ymatm-0001NQ-Jq for bug-gnu-emacs@gnu.org; Mon, 27 Apr 2015 00:44:06 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:50988) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Ymatm-0001NE-GJ for bug-gnu-emacs@gnu.org; Mon, 27 Apr 2015 00:44:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1Ymatm-0006qw-1v for bug-gnu-emacs@gnu.org; Mon, 27 Apr 2015 00:44: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: Mon, 27 Apr 2015 04:44:01 +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.143010980826295 (code B ref 20420); Mon, 27 Apr 2015 04:44:01 +0000 Original-Received: (at 20420) by debbugs.gnu.org; 27 Apr 2015 04:43:28 +0000 Original-Received: from localhost ([127.0.0.1]:40764 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YmatD-0006q1-UW for submit@debbugs.gnu.org; Mon, 27 Apr 2015 00:43:28 -0400 Original-Received: from ironport2-out.teksavvy.com ([206.248.154.181]:53546) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YmatC-0006pp-02 for 20420@debbugs.gnu.org; Mon, 27 Apr 2015 00:43:26 -0400 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AnEFAGvvdVRMCqjW/2dsb2JhbAA3gVOfQYIugQiBdQEBBAFWIwULCzQSFBgNJIgTohGLdg0KGj0JAwODPgMKCQcCg1QEo2OEWA X-IPAS-Result: AnEFAGvvdVRMCqjW/2dsb2JhbAA3gVOfQYIugQiBdQEBBAFWIwULCzQSFBgNJIgTohGLdg0KGj0JAwODPgMKCQcCg1QEo2OEWA X-IronPort-AV: E=Sophos;i="5.11,557,1422939600"; d="scan'208";a="117510389" Original-Received: from 76-10-168-214.dsl.teksavvy.com (HELO ceviche.home) ([76.10.168.214]) by ironport2-out.teksavvy.com with ESMTP/TLS/DHE-RSA-AES256-SHA; 27 Apr 2015 00:43:20 -0400 Original-Received: by ceviche.home (Postfix, from userid 20848) id 4E49F6610A; Mon, 27 Apr 2015 00:43:20 -0400 (EDT) In-Reply-To: <87vbgjm74o.fsf@gmail.com> (Vitalie Spinu's message of "Sun, 26 Apr 2015 14:00:39 +0200") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.50 (gnu/linux) 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:102084 Archived-At: > This sounds like a more involved version of what Clojure does with > multimethods (also implemented in emacs multi.el package [1]) I didn't know about Clojure's defmulti. It's simple and elegant, I like it. > If I understand correctly the dispatch function is like > your generalizer. Somewhat, yes. It's a bit more complex than that because in CLOS (and even more so in cl-generic) the code to compute the dispatch value depends on the actual methods defined, so cl-generic's "generalizers" are objects which describe which code to use depending on which methods are defined, and the actual value on which we dispatch is in general not quite the same as the "premise" (i.e. the "specializer"), so the generalizer also provides code to compute the specializer from the dispatch value. Stefan