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.5 required=5.0 tests=DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, 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 e2aa716f for ; Thu, 5 Mar 2020 00:57:29 +0000 (UTC) Received: by minnie.tuhs.org (Postfix, from userid 112) id 860059D722; Thu, 5 Mar 2020 10:57:28 +1000 (AEST) Received: from minnie.tuhs.org (localhost [127.0.0.1]) by minnie.tuhs.org (Postfix) with ESMTP id C7E729D71B; Thu, 5 Mar 2020 10:56:55 +1000 (AEST) Authentication-Results: minnie.tuhs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="fMbGClxC"; dkim-atps=neutral Received: by minnie.tuhs.org (Postfix, from userid 112) id 1DD699D68F; Thu, 5 Mar 2020 10:55:51 +1000 (AEST) Received: from mail-ua1-f46.google.com (mail-ua1-f46.google.com [209.85.222.46]) by minnie.tuhs.org (Postfix) with ESMTPS id 9F06C9D720 for ; Thu, 5 Mar 2020 10:55:48 +1000 (AEST) Received: by mail-ua1-f46.google.com with SMTP id a18so523372uao.1 for ; Wed, 04 Mar 2020 16:55:48 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=9hpF16+1ntcKcFW+DnztD21beXHu0E2M2N0w3TvQWt4=; b=fMbGClxCs4wHy5prMaIM1ORXaqLy7Kvn9EoybzGt32x4o0R1i8qPSTPf8VJf61t9Kn S88SJFnyUHOlN8Sde/WmR0+YE4Ky/iKI4KUwQSg7XRKWP5ETpHwyak3q6+JkYLWvwsSl 6mO+w3/LKXWH86siag7OSRJnB3XPT7rrE6kT8HKhoof7tN3LV/7E+LWxem+ReYG3fkeB l7CK0qkYZibGxlJTRSW4tLIHJuU30ruKySlZtiQPxFRy9NefgzC/SM2wKjB9VdCFCvKk mOnrX9oZSk2Yx/isaIUu0OSw3Uyf5owzaL50KRwMsXHqRO0UDFEzcXLpPd0PFZ3rAMAu 4KzA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=9hpF16+1ntcKcFW+DnztD21beXHu0E2M2N0w3TvQWt4=; b=L427nSfghboU6uS9TWsjwWCIdHYoPmmywjCwYeFRqMb3urfygnsuLc/pvytztzmAoL jCnPFOijhuVTcD/lJb2qB90e1Ao53gTp4K46W8Bdv4UsHCEUVBsAwrv2MP0xbxpAkQMR Jhep2pcTYGMyiL7iBBD8tYWVdoQxy8TIMicF9rbQA/jAR6GwAXvNuqwef2zcyojN0c3O 46bEH7PvN0VIW/ukn9w5gQg7BfIujvKpMsO88di2OXZW0wQAec6iaDG38Jr9yJzDc+29 Wm0XZ8PDxVXMp391ymQ2e/k1JpaZtvDi+Up834/zwFneAYkJE0dnfmnwSyjoQSZcpY7h LsZA== X-Gm-Message-State: ANhLgQ2qSY03pdneFx6pyYUAcLfwMxvw0EyUKL31C02nGBUkLg3fmGMs iSIpwn/r9GBGi7LdwvzkepQoXd5xs8QuHP9c32s= X-Google-Smtp-Source: ADFU+vt7753Y6e+ILjoiQLJdbr//I67wpIV00MlWuAavHnelhucxVi9OhLMtXyi9zKqs5uUjv187vr2z3B2sUA8d7Mg= X-Received: by 2002:ab0:1d03:: with SMTP id j3mr3230474uak.6.1583369747557; Wed, 04 Mar 2020 16:55:47 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: From: Rob Pike Date: Thu, 5 Mar 2020 11:55:36 +1100 Message-ID: To: "John P. Linderman" Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Subject: Re: [TUHS] Command line options and complexity 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: The Eunuchs Hysterical Society Errors-To: tuhs-bounces@minnie.tuhs.org Sender: "TUHS" I have no memory of this, but that doesn't mean it's false. Also in my defense, suggesting an option compared to actually adding the code is a lesser crime. Or is it? Anyway I removed all the options from research cat, including -u. That counts for something. -rob On Thu, Mar 5, 2020 at 3:19 AM John P. Linderman wrote: > > The "statute of limitations" must have passed long ago, so I confess to h= aving been the author of the original tac (cat in reverse). I was working o= n a project that wrote log files, but the logs were very "bursty". Minutes = might go by without any activity, followed by a burst of logging activity. = We often wanted to see the most recent burst of activity, so "tail -f" woul= dn't do the job. It would show the next burst of activity, which might not = occur for quite some time. Somebody posted a functional equivalent on some = netnews group, but it was ghastly. I think it did seeks of -1 characters at= a time to accumulate each line. That would have been fast enough to feed o= ur pathetic 1200 baud terminals, but it would have beat the system to death= , and that would have been a disservice to other users. My version did read= s of 512 bytes on 512-byte boundaries, so it put much less load on the syst= em. I couldn't bear to see something like the netnews version > get adopted. The software release process at the Labs was a bureaucratic = nightmare, so I "tossed my version over the wall", into the arms of Andy Ta= nenbaum, as I recall. He made it public, attributed to "an unknown author". > > I don't know how Rob Pike got ahold of it, but he recognized that mailbox= files had the same bursty growth. Unlike our log files, whose contents wer= e acceptably understandable in reverse order, mail messages were hard to re= ad in reverse order, so he proposed making it possible to recognize the hea= ders at the start of each mail message, and put the entire message out in r= eadable order. I think that was a useful option, but the irony of Rob addin= g an option to "tac" was hard to overlook. > > The version out there now was rewritten by Jay Lepreau, it seems: > > /* > * tac.c - Print file segments in reverse order > * > * Original line-only version by unknown author off the net. > * Rewritten in 1985 by Jay Lepreau, Univ of Utah, to allocate memory > * dynamically, handle string bounded segments (suggested by Rob Pike), > * and handle pipes. > */ > > Dynamic buffer allocation rather than relying on the time-honored 512-byt= es-is-enough assumption was a positive, as was supporting Rob's suggestion.= Handling pipes strikes me as a waste of code, but hey, anything is better = than that version I replaced. > > On Wed, Mar 4, 2020 at 9:15 AM Nelson H. F. Beebe w= rote: >> >> Arnold Robbins writes: >> >> >> There was no tac in V7 Unix. It was first posted to USENET, I don't >> >> know by who, and picked up by Linux and *BSD. >> >> That brought back memories, and to verify them, I checked the tac.c >> source code in the latest GNU coreutils test release. It says >> >> /* Written by Jay Lepreau (lepreau@cs.utah.edu). >> GNU enhancements by David MacKenzie (djm@gnu.ai.mit.edu). */ >> >> So my memory was right that my old friend Jay was the author. Sadly, >> we lost him in September 2008: see >> >> https://www.legacy.com/obituaries/saltlaketribune/obituary.aspx?= page=3Dlifestory&pid=3D117597321 >> >> Jay founded the influential Flux group in advanced networking research: >> >> http://www.flux.utah.edu/profile/lepreau >> >> ------------------------------------------------------------------------= ------- >> - Nelson H. F. Beebe Tel: +1 801 581 5254 = - >> - University of Utah FAX: +1 801 581 4148 = - >> - Department of Mathematics, 110 LCB Internet e-mail: beebe@math.utah= .edu - >> - 155 S 1400 E RM 233 beebe@acm.org beebe@compute= r.org - >> - Salt Lake City, UT 84112-0090, USA URL: http://www.math.utah.edu/~b= eebe/ - >> ------------------------------------------------------------------------= -------