From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Michael Heerdegen Newsgroups: gmane.emacs.help Subject: Re: Making ielm behave like a shell (getting to previous commands using the up-arrow key) Date: Sat, 19 Dec 2020 03:07:25 +0100 Message-ID: <87k0teo8f6.fsf@web.de> References: <87im91ys4m.fsf@web.de> <874kklyqi2.fsf@web.de> <87im90dq2s.fsf@web.de> <87mtyb32ud.fsf@web.de> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="22963"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) To: help-gnu-emacs@gnu.org Cancel-Lock: sha1:XyIpVdRGdiNmWZ07EjeCLq1CfIU= Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Sat Dec 19 03:07:52 2020 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kqRey-0005vE-TK for geh-help-gnu-emacs@m.gmane-mx.org; Sat, 19 Dec 2020 03:07:52 +0100 Original-Received: from localhost ([::1]:54770 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kqRey-00067X-07 for geh-help-gnu-emacs@m.gmane-mx.org; Fri, 18 Dec 2020 21:07:52 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:47108) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kqRee-00067L-Sf for help-gnu-emacs@gnu.org; Fri, 18 Dec 2020 21:07:32 -0500 Original-Received: from ciao.gmane.io ([116.202.254.214]:59108) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kqRed-0000Jk-B9 for help-gnu-emacs@gnu.org; Fri, 18 Dec 2020 21:07:32 -0500 Original-Received: from list by ciao.gmane.io with local (Exim 4.92) (envelope-from ) id 1kqReb-0005bX-SZ for help-gnu-emacs@gnu.org; Sat, 19 Dec 2020 03:07:29 +0100 X-Injected-Via-Gmane: http://gmane.org/ Received-SPF: pass client-ip=116.202.254.214; envelope-from=geh-help-gnu-emacs@m.gmane-mx.org; helo=ciao.gmane.io X-Spam_score_int: -13 X-Spam_score: -1.4 X-Spam_bar: - X-Spam_report: (-1.4 / 5.0 requ) BAYES_00=-1.9, FREEMAIL_FORGED_FROMDOMAIN=0.25, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.249, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.23 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-mx.org@gnu.org Original-Sender: "help-gnu-emacs" Xref: news.gmane.io gmane.emacs.help:126543 Archived-At: Jean Louis writes: > For me and in my programming somebody from scheme programming, > probably in Guile teached me that I should be making smaller functions > where each function does something and outputs something. And I that > gave me impression of being very simple. But then in Emacs packages I > too often find long and incomprehensible functions that do not follow > the style I have learned before some years. It's debatable how large defuns should be. In the Emacs sources, a lot of them could be split or refactored indeed. What we have is the result of a development. In the repositories, small changes are preferred and are better traceable with version control systems, and refactoring is an unrewarding job that even messes git history. As a consequence, defuns tend to grow. I guess that is one side of the phenomenon called "bit rotting". The other side is that what one might consider as an ideal size of defuns (or "factors") in his code might vary with your familiarity and experience with the language and the project. Experienced people might find relatively large units ok that would be not acceptable for somebody for whom working with that language is not daily business. Regards, Michael.