From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, HTML_MESSAGE,MAILING_LIST_MULTI autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 4152 invoked from network); 18 Nov 2021 21:07:41 -0000 Received: from minnie.tuhs.org (45.79.103.53) by inbox.vuxu.org with ESMTPUTF8; 18 Nov 2021 21:07:41 -0000 Received: by minnie.tuhs.org (Postfix, from userid 112) id 4114A9CA3C; Fri, 19 Nov 2021 07:07:40 +1000 (AEST) Received: from minnie.tuhs.org (localhost [127.0.0.1]) by minnie.tuhs.org (Postfix) with ESMTP id 4803A9CA3B; Fri, 19 Nov 2021 07:06:23 +1000 (AEST) Authentication-Results: minnie.tuhs.org; dkim=pass (2048-bit key; unprotected) header.d=ccil-org.20210112.gappssmtp.com header.i=@ccil-org.20210112.gappssmtp.com header.b="sG9mq6Q7"; dkim-atps=neutral Received: by minnie.tuhs.org (Postfix, from userid 112) id 02F1D9C2A1; Fri, 19 Nov 2021 07:03:30 +1000 (AEST) Received: from mail-qt1-f172.google.com (mail-qt1-f172.google.com [209.85.160.172]) by minnie.tuhs.org (Postfix) with ESMTPS id 5DC739CA3A for ; Fri, 19 Nov 2021 07:03:27 +1000 (AEST) Received: by mail-qt1-f172.google.com with SMTP id v22so7449110qtx.8 for ; Thu, 18 Nov 2021 13:03:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ccil-org.20210112.gappssmtp.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=/JXc5Yh5yeLyrXo8xpFJv0lHsvGNzgXBi0/h/4IZE4w=; b=sG9mq6Q75R7KaXI7ODuA+BLG8wCILbcw/ANFOOCW0oEYH6DLMnvk2qml8VGbkih9Eu aHTygOEVT0YS6yvgCcQdOIW2IxQTM8OPPwbDxrDooqJrXD+JIzsnv89rujc52LkWf23i mT51IROvozHb9+0tmV3DauPtErtPdbQBnN+upUbQ10SJYIb7oTTXFdBOaC1KamJT+9Vt PUYhIxUebX+zyF/EX7A/2BcG338uni5Q4FuOBSHjsNqY400jj0HBKc+3zRbOF/KZS82q tovvGBv4h4Sp8GaT7hldKFVEU6WYS1cgTGmQNfFnFNrmItB+lEnWcacRN6p1TvYaUbMG IuJg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=/JXc5Yh5yeLyrXo8xpFJv0lHsvGNzgXBi0/h/4IZE4w=; b=vifPBmB5caHLRq8QLADemlsOybzG7Q0LT/jlQjeddbTsoaG+OHPeoJhNZD8hxhxDqx JmXqQra41kIr+/h/2lUnY3NDtoY/FQaoa1/ig0LnHKPgqrwtikKtiVsMHf0HS27Ht/PA n+xbHzIO5SW8V9F21jYAV+eVQDtchkzVB07efCiEtEnZxfXSDfpWmKF16cjLxV8cjvXr KVi/gLH9QRIkCUeO9SDNwfSvUicNMAEs1EwVZMdrgz9hzNDMUAXHRvBialekolzeFnT8 g4MocP5bUkEBXQuXnxuoyhzgb/zZ3HgAKkQWQIsZyq56Khv4Z3dAB+VJ4SGSGzBKSxOC T7nw== X-Gm-Message-State: AOAM532X5T9r75HxZRMoUE2e4xkTcmAMhtsLKZxN7asiO0ryT3/dxEkk 1MQzRkWSVUSW1igDn2ZhVOuq05Krecan5T30AlMAfZOsufxd0HsJ X-Google-Smtp-Source: ABdhPJwkTLR/5MJq++h5aRmX1PVMOgQYPfCZ/nm/YMU65gzDlknusVLi1lLE3VHu6Sn/hiHfgBmV6IObZ2trT/kWRyo= X-Received: by 2002:ac8:4e8e:: with SMTP id 14mr563541qtp.174.1637269406296; Thu, 18 Nov 2021 13:03:26 -0800 (PST) MIME-Version: 1.0 References: <202111181903.1AIJ3xqk032412@freefriends.org> In-Reply-To: <202111181903.1AIJ3xqk032412@freefriends.org> From: John Cowan Date: Thu, 18 Nov 2021 16:03:15 -0500 Message-ID: To: Aharon Robbins Content-Type: multipart/alternative; boundary="0000000000005d43aa05d1167de3" Subject: Re: [TUHS] Book Recommendation [ reallly inscrutable languages ] 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: , Cc: TUHS main list , pnr@planet.nl Errors-To: tuhs-bounces@minnie.tuhs.org Sender: "TUHS" --0000000000005d43aa05d1167de3 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Thu, Nov 18, 2021 at 2:06 PM wrote: > > The shell, awk, sed, etc. had arrived at more or less fully formed > > versions by 1980. Perl (and TCL) did not appear until the very end of > > the 1980=E2=80=99s. What filled the gap in that decade, if anything? > > Nothing. It was the need for filling the gap that engendered Perl. > ISTR that lwall said his specific problem with using awk was its inability to read from files other than those mentioned on the command line (and them only sequentially). Old awk did not have getline. There were probably other itches he wanted to scratch, but that one was a deal-breaker (or -maker). Remember that Perl 1 through Perl 3 were around durinig the 80s; Perl 4 > sort of settled in for a longer time. > Perl 2 was the faster (though still very slow) regex engine; Perl 3 was binary I/O; Perl 4 was the Camel Book, which is why the version number stayed at 4.xxx until something in the Camel Book broke. "New" awk didn't get out of the labs until 1987/1988, and that was only > via SVR3.2 and/or the AT&T Toolchest; it wasn't open source, nor > did it provide access to many of the needed system calls in the way > that Perl did. > The project I worked on in 1999-2005 was about half Perl and half shell+sed+awk+etc.... I was able to do that because I had worked on an earlier project that was by fiat all Perl 4. I don't use Perl any more, but I still use the shell toolkit constantly. I have a back burner project to allow convenient manual data file transformation. It grew out of my dissatisfaction with using the m,n! command in various editors: you can undo, but it's slow, and you have no access to the full undo tree except in vim. My proposed 'mung' command doesn't actually edit at the micro level, but it lets you use | to create a new state of the tree, and each state is stored in a file (disk is cheap). The tree is persistent. When you have the file the way you want it, you write it out and, if you want, generate a shell script that replicates what you just did so it's repeatable. I'll probably implement it in Python. The commands and other external information are at < https://github.com/johnwcowan/exx/blob/master/mung/mung.txt>. --0000000000005d43aa05d1167de3 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


On Thu, Nov 18, 2= 021 at 2:06 PM <a= rnold@skeeve.com> wrote:
=C2=A0
> The shell, awk, sed, etc. had arrived= at more or less fully formed
> versions by 1980. Perl (and TCL) did not appear until the very end of<= br> > the 1980=E2=80=99s. What filled the gap in that decade, if anything?
Nothing. It was the need for filling the gap that engendered Perl.

ISTR that lwall said his s= pecific problem with using awk was its inability to read from files other t= han those mentioned on the command line (and them only sequentially).=C2=A0= Old awk did not have getline.=C2=A0 There were probably other itches he wa= nted to scratch, but that one was a deal-breaker (or -maker).

Remember that Perl 1 through Perl 3 were around durinig the 80s; Perl 4
sort of settled in for a longer time.

Perl 2 was the faster (though still very slow) regex en= gine; Perl 3 was binary I/O; Perl 4 was the Camel Book, which is why the ve= rsion number stayed at 4.xxx until something in the Camel Book broke.
=

"New" awk didn't g= et out of the labs until 1987/1988, and that was only
via SVR3.2 and/or the AT&T Toolchest; it wasn't open source, nor did it provide access to many of the needed system calls in the way
that Perl did.

The= project I worked on in 1999-2005 was about half Perl and half shell+sed+aw= k+etc....=C2=A0 I was able to do that because I had worked on an earlier pr= oject that was by fiat all Perl 4.=C2=A0 I don't use Perl any more, but= I still use the shell toolkit constantly.
<= br>
I have a back burner project to allow co= nvenient manual data file transformation.=C2=A0 It grew out of my dissatisf= action with using the m,n! command in various editors: you can undo, but it= 's slow, and you have no access to the full undo tree except in vim.=C2= =A0 My proposed 'mung' command doesn't actually edit at the mic= ro level, but it lets you use | to create a new state of the tree, and each= state is stored in a file (disk is cheap).=C2=A0 The tree is persistent.= =C2=A0 When you have the file the way you want it, you write it out and, if= you want, generate a shell script that replicates what you just did so it&= #39;s repeatable.

I'll probably implement it in Python.=C2=A0 The commands and = other external information are at <https://github.com/johnwcowan/exx/blob/m= aster/mung/mung.txt>.
--0000000000005d43aa05d1167de3--