From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Thien-Thi Nguyen Newsgroups: gmane.emacs.devel Subject: Re: Report the evolution of Emacs Lisp sources. Date: Mon, 18 Aug 2008 11:44:20 +0200 Message-ID: <871w0mfyiz.fsf@ambire.localdomain> References: <9045719.5972801219043101026.JavaMail.www@wwinf4609> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: ger.gmane.org 1219052875 8102 80.91.229.12 (18 Aug 2008 09:47:55 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 18 Aug 2008 09:47:55 +0000 (UTC) Cc: "Emacs Dev \[emacs-devel\]" To: alinsoar@voila.fr Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Aug 18 11:48:46 2008 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1KV1Lx-0006vU-PS for ged-emacs-devel@m.gmane.org; Mon, 18 Aug 2008 11:48:46 +0200 Original-Received: from localhost ([127.0.0.1]:50294 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1KV1L0-00007Q-MZ for ged-emacs-devel@m.gmane.org; Mon, 18 Aug 2008 05:47:46 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1KV1Ke-0008MG-QA for emacs-devel@gnu.org; Mon, 18 Aug 2008 05:47:24 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1KV1Kd-0008LU-Ri for emacs-devel@gnu.org; Mon, 18 Aug 2008 05:47:24 -0400 Original-Received: from [199.232.76.173] (port=51672 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1KV1Kd-0008LJ-6J for emacs-devel@gnu.org; Mon, 18 Aug 2008 05:47:23 -0400 Original-Received: from [151.61.141.132] (port=59428 helo=ambire.localdomain) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1KV1Kd-0004Ez-Bu for emacs-devel@gnu.org; Mon, 18 Aug 2008 05:47:23 -0400 Original-Received: from ttn by ambire.localdomain with local (Exim 4.63) (envelope-from ) id 1KV1Hh-0000eV-0N; Mon, 18 Aug 2008 11:44:21 +0200 In-Reply-To: <9045719.5972801219043101026.JavaMail.www@wwinf4609> (A. Soare's message of "Mon, 18 Aug 2008 09:05:01 +0200 (CEST)") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.0.60 (gnu/linux) X-detected-kernel: by monty-python.gnu.org: Genre and OS details not recognized. X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:102585 Archived-At: () A Soare () Mon, 18 Aug 2008 09:05:01 +0200 (CEST) In this moment, the only method to see how the code of emacs evaluated is `diff'. Do you mean to say "evolved" instead of "evaluated"? One can show the differences, by comparing the internal representation of the lisp code tree of 2 versions. I saw this idea for the C code here: [CIL-based AST-diff tool] An advantage of this method would be to report only one when the name of a variable changes. This method will also ignore to report the null-effect characters like blanks or empty new lines. diff reports everything. To its credit, diff can be told to ignore many things, including certain classes of whitespace. But your general point stands. What do you think, it would be useful such a tool to make reports of lisp code changes? Maybe I will try it, but it might be _realy_ useful? Well, there's a lot of noise possible discussing "might be useful" (see other threads), so i'll just say that personally i would love to have a tool that could intuit and summarize changes, to help generate ChangeLog entries. [dreaming...] I could hook it up to a visualization program[0] and make annotated movies, w/ voice commentary... ttn: Ah, now the variable name has changed. What luck, we have the before and after authors here -- WDYT? guest-1: Good choice; short, sweet, not too cryptic. guest-2: Umm, what does `x' /really/ mean? guest-1: You have obviously lost the thread of this patch series. guest-2: Not like you have any better idea, you, you... cowboy! [clicks ball-point pen furiously] guest-1: Well, i guess `long-screen-eating-varname' is better? Too much fun with M-/ again, i take it? [sneers] guest-2: I strive for semantic cohesion, but maybe that's too difficult for one-byte GSR-drunk twitchers to grok. guest-1: How dare you mock my keyboard-fu! Cretin! ttn: Ah, now the variable name has changed back. The ChangeLog entry mentions "aliasing problems"... guest-2: See, see! It was /you/ who broke the build. guest-1: Feh, nobody uses this code anyway. ttn: [amidst scuffling sounds] That concludes the audio portion of "the underbelly of emacs", please enjoy the remaining video portion... Or maybe not. :-D thi _________________________________________________________________ [0] http://www.gnuvola.org/software/j/buffer-thumbnail/output/