From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Emanuel Berg Newsgroups: gmane.emacs.help Subject: Re: Knowing where a function has been used (bis) [Was: Re: Optimising Elisp code] Date: Sun, 14 Oct 2018 21:10:56 +0200 Organization: Aioe.org NNTP Server Message-ID: <86y3b0ibsv.fsf@zoho.com> References: <86d0sknoud.fsf@zoho.com> <86tvlvmxtz.fsf@zoho.com> <86woqprcdb.fsf@zoho.com> <8636tcl05a.fsf@zoho.com> <8636t9k1sj.fsf@zoho.com> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: blaine.gmane.org 1539544412 28794 195.159.176.226 (14 Oct 2018 19:13:32 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Sun, 14 Oct 2018 19:13:32 +0000 (UTC) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.4 (gnu/linux) To: help-gnu-emacs@gnu.org Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Sun Oct 14 21:13:28 2018 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gBlpO-0007MB-Fs for geh-help-gnu-emacs@m.gmane.org; Sun, 14 Oct 2018 21:13:26 +0200 Original-Received: from localhost ([::1]:49278 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gBlrV-0002JX-44 for geh-help-gnu-emacs@m.gmane.org; Sun, 14 Oct 2018 15:15:37 -0400 Original-Path: usenet.stanford.edu!goblin2!goblin.stu.neva.ru!aioe.org!.POSTED!not-for-mail Original-Newsgroups: gnu.emacs.help Original-Lines: 32 Original-NNTP-Posting-Host: IYul6C8CwghWjVz/CRhiVw.user.gioia.aioe.org Original-X-Complaints-To: abuse@aioe.org Cancel-Lock: sha1:Lg9HiLNugPjAHWw10xUK/hWTUS4= Mail-Copies-To: never X-Notice: Filtered by postfilter v. 0.8.3 Original-Xref: usenet.stanford.edu gnu.emacs.help:224138 X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Original-Sender: "help-gnu-emacs" Xref: news.gmane.org gmane.emacs.help:118264 Archived-At: tomas wrote: > Code "grows", one single (minimum-effort) > step by step, following a path of minimum > resistance over a time-changing > fractal landscape. > > As one colleague of me used to put it (and > he's one of the most gifted programmers > I know personally), code grows all by itself, > and the programmer's job is to prune it and > to keep the pruning rate high enough so to > not be drowned by the jungle. Code grows, but not necessarily by enlonging the defuns that are already there. Instead, when some new situation arrives, write yet another defun to handle it. Then call it from the original function. That way the original function grows, but only by a single line. To do this is much, much simpler than to write an insanely long defun, and when insanity becomes a problem, try to "refactor" it! [This is a general remark; I never did any work on Gnus so I don't know what explanation holds the most truth.] -- underground experts united http://user.it.uu.se/~embe8573