From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.devel Subject: Re: Generators (iterators) for Gnu Emacs Date: Sun, 07 Dec 2014 22:23:58 -0500 Message-ID: References: <877fy77zhp.fsf@web.de> <87k326d4ww.fsf@gmail.com> <877fy6rp2o.fsf@web.de> <548230FB.40307@dancol.org> <5482C872.5010304@dancol.org> <5483C537.3010707@dancol.org> <54840719.5080209@dancol.org> <87ppbv4bdt.fsf@ferrier.me.uk> <5484C780.3080902@dancol.org> <5484E52A.8020107@dancol.org> <54850BDD.1020202@dancol.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1418009079 28510 80.91.229.3 (8 Dec 2014 03:24:39 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 8 Dec 2014 03:24:39 +0000 (UTC) Cc: Michael Heerdegen , Nic Ferrier , emacs-devel@gnu.org To: Daniel Colascione Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Dec 08 04:24:31 2014 Return-path: Envelope-to: ged-emacs-devel@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 1Xxow3-0001nz-33 for ged-emacs-devel@m.gmane.org; Mon, 08 Dec 2014 04:24:31 +0100 Original-Received: from localhost ([::1]:59925 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Xxow2-00089Z-I9 for ged-emacs-devel@m.gmane.org; Sun, 07 Dec 2014 22:24:30 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:60216) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Xxovj-00089L-91 for emacs-devel@gnu.org; Sun, 07 Dec 2014 22:24:18 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XxovX-00054m-Sh for emacs-devel@gnu.org; Sun, 07 Dec 2014 22:24:11 -0500 Original-Received: from ironport2-out.teksavvy.com ([206.248.154.181]:27322) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XxovX-00054e-Nh for emacs-devel@gnu.org; Sun, 07 Dec 2014 22:23:59 -0500 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AskIAOwQflRFxLi7/2dsb2JhbABbgweDYMp3BAICgSQXAQEBAQEBfIQDAQEEViMQCw4mEhQYDSQuiCXWWQEBAQEGAQEBAR6QbweESAWLAZIxj3OCCoF4hBkhgncBAQE X-IPAS-Result: AskIAOwQflRFxLi7/2dsb2JhbABbgweDYMp3BAICgSQXAQEBAQEBfIQDAQEEViMQCw4mEhQYDSQuiCXWWQEBAQEGAQEBAR6QbweESAWLAZIxj3OCCoF4hBkhgncBAQE X-IronPort-AV: E=Sophos;i="5.07,502,1413259200"; d="scan'208";a="99824367" Original-Received: from 69-196-184-187.dsl.teksavvy.com (HELO pastel.home) ([69.196.184.187]) by ironport2-out.teksavvy.com with ESMTP/TLS/DHE-RSA-AES256-SHA; 07 Dec 2014 22:23:59 -0500 Original-Received: by pastel.home (Postfix, from userid 20848) id D64F49896; Sun, 7 Dec 2014 22:23:58 -0500 (EST) In-Reply-To: <54850BDD.1020202@dancol.org> (Daniel Colascione's message of "Sun, 07 Dec 2014 18:24:29 -0800") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.50 (gnu/linux) X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 206.248.154.181 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:179356 Archived-At: >>> *Any* solution that frees developers from spelling all symbols in full >>> will have that disadvantage. >> That's right. > So what? There are definitely offsetting benefits. Or are you saying M-x > grep is our top priority now? I'm ambivalent on this issue, so take my word as an summary of my understanding of the last discussion about it. In other words, any improvement that tries to reduce the redundancy in identifiers will require corresponding improvement in our tools to infer the now-implicit information. So we could bite the bullet and hope that someone will step up to the plate and improve CEDET (or equivalent) to make up the difference. Or we can sit here and wait for CEDET to improve first. Or we can decide that this redundancy is really not that costly compared to the benefits of being able to use dumb tools rather than being dependent on more sophisticated packages. When you said: That's a terrible idea. It makes it much harder to reason about the correct operation of programs, since now it makes it virtually impossible to implement find-definition functionality without lots of type inference. you put your finger on the issue, indeed. Using namespaces/modules rather than Smalltalk-style objects would undoubtedly require significantly less sophisticated analysis, but the same kind of tradeoff is at play. So for now, I insist on `gen-next' and `cl-flet'. Even if it makes me unpopular. And note that I decided `cl-setf' was important/popular/frequent enough to deserve to be promoted to `setf', and the same could happen at some point to `gen-next' or `cl-flet'. Stefan