From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-0.8 required=5.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE autolearn=ham autolearn_force=no version=3.4.2 Received: from minnie.tuhs.org (minnie.tuhs.org [45.79.103.53]) by inbox.vuxu.org (OpenSMTPD) with ESMTP id 3bddbd85 for ; Sun, 12 Jan 2020 17:21:37 +0000 (UTC) Received: by minnie.tuhs.org (Postfix, from userid 112) id 32C459B89D; Mon, 13 Jan 2020 03:21:36 +1000 (AEST) Received: from minnie.tuhs.org (localhost [127.0.0.1]) by minnie.tuhs.org (Postfix) with ESMTP id AA14B93DA0; Mon, 13 Jan 2020 03:21:19 +1000 (AEST) Received: by minnie.tuhs.org (Postfix, from userid 112) id 0661D93DA0; Mon, 13 Jan 2020 03:21:17 +1000 (AEST) Received: from marmaro.de (marmaro.de [176.28.23.198]) by minnie.tuhs.org (Postfix) with ESMTP id 59C7493D85 for ; Mon, 13 Jan 2020 03:21:16 +1000 (AEST) Received: by marmaro.de (masqmail 0.3.6-dev, from userid 1000) id 1iqgvK-2KJ-00 for ; Sun, 12 Jan 2020 18:21:14 +0100 To: tuhs@minnie.tuhs.org In-reply-to: References: <202001121343.00CDhYHK132101@tahoe.cs.Dartmouth.EDU> Comments: In-reply-to Warner Losh message dated "Sun, 12 Jan 2020 09:56:48 -0700." MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-ID: <8946.1578849674.1@marmaro.de> Content-Transfer-Encoding: quoted-printable Date: Sun, 12 Jan 2020 18:21:14 +0100 From: markus schnalke Message-ID: <1iqgvK-2KJ-00@marmaro.de> Subject: Re: [TUHS] Tech Sq elevator (Was: screen editors) X-BeenThere: tuhs@minnie.tuhs.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: The Unix Heritage Society mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: tuhs-bounces@minnie.tuhs.org Sender: "TUHS" Hoi. [2020-01-12 09:56] Warner Losh > > It should have been=C2=A0something like=C2=A0 (list-length (command-list-= fn)) but I'll > bet that ? was bound to a complicated function that just displayed the re= sults > and didn't properly abstract out the UI (printing) from the data collecti= on > (getting a list), which is what made it so hard. I've had so many gnu ema= cs > experiences like this over the years, but to the community's credit, ther= e's > fewer and fewer as time goes by. > = > ObUnix: This shows the power of having the right abstractions and being > disciplined to code to those ideal abstractions any time there might be > reuse... True words. These concepts (what you call abstractions) is no optional geek pleasure but the most important information for everyone using the system or language. It's important to teach them, make them explicit, deal with them, substract points in exams for correct solutions that have bad style, keep the libraries and books on a high level, ... This is one of the lesser regarded aspects of what Unix did really well. meillo