The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
From: Ralph Corderoy <ralph@inputplus.co.uk>
To: tuhs@tuhs.org
Subject: [TUHS] dc after bc.
Date: Wed, 16 Feb 2022 14:34:45 +0000	[thread overview]
Message-ID: <20220216143445.7C4EE2111F@orac.inputplus.co.uk> (raw)
In-Reply-To: <alpine.BSF.2.21.9999.2202161122500.45073@aneurin.horsfall.org>

Hi,

Dave Horsfall wrote:
> > I never quite got DC, and wondered at the duality of them.
>
> You know you're a greybeard if you can remember why the DC sequence
> "99k2vp8opq" was so popular...

I used to use bc, and still do when ‘a(1)*4’ would be useful, but moved
to dc because I didn't know it well and wanted to improve.  Plus reverse
Polish tends to better match what I want to enter.

But I think I'm missing the idiomatic way to use it; I'm puzzled there's
no command to print and pop the top of stack followed by a linefeed.

- ‘p’ prints the top of stack without popping it, and then linefeed.
- ‘n’ pops and prints the top of stack but without a linefeed.
- ‘f’ prints the stack, one number per line.
- ‘c’ clears the stack.

This means my multiple unrelated calculations tend to end with ‘pc’ as
otherwise the stack builds up and I might accidentally use old stuff on
the stack if the operators for this next sum don't push enough operands
of their own.

If I use n then the stack is popped, which I want, but the cursor
remains after the number.  I could see that's useful if the number was
still the top of stack because I could continue typing on the same line
to make use of it.

So I'm left with ‘pc’ or ‘fc’, or ‘n10P’.  Popping without printing is
‘ss’ or similar to store it in register s.  So ‘pss’ prints ToS and pops
just it, simpler than ‘n10P’.

How did dc's users balance printing the results with not building stack
detritus?

-- 
Cheers, Ralph.

  parent reply	other threads:[~2022-02-16 14:36 UTC|newest]

Thread overview: 56+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-02-15 22:31 [TUHS] Lorinda Cherry Douglas McIlroy
2022-02-15 23:32 ` Steve Nickolas
2022-02-15 23:43   ` Jim Capp
2022-02-15 23:51     ` Larry McVoy
2022-02-16  0:54       ` Will Senn
2022-02-16  2:58         ` Steve Nickolas
2022-02-16  0:09 ` George Michaelson
2022-02-16  0:24   ` Dave Horsfall
2022-02-16  7:54     ` arnold
2022-02-16  8:13       ` markus schnalke
2022-02-16 14:54         ` Leah Neukirchen
2022-02-16 22:27           ` Dave Horsfall
2022-02-16 22:40             ` Andrew Diller
2022-02-17 10:14               ` Peter Jeremy via TUHS
2022-02-17 15:50                 ` Adam Thornton
2022-02-17 20:23                   ` Dave Horsfall
2022-02-17 10:24               ` Andy Kosela
2022-02-17 16:05                 ` Andrew Hume
2022-02-17 16:38                   ` Warner Losh
2022-02-16 22:42             ` Larry McVoy
2022-02-16 22:56               ` Clem Cole
2022-02-16 23:49                 ` Paul Winalski
2022-02-16 23:49               ` [TUHS] Benchmarks Bakul Shah
2022-02-17  1:02                 ` Larry McVoy
2022-02-17 12:36             ` [TUHS] Lorinda Cherry Stuart Remphrey
2022-02-17 19:59           ` Tom Ivar Helbekkmo via TUHS
2022-02-17 21:18             ` Dave Horsfall
2022-02-17 21:44               ` Bakul Shah
2022-02-18  8:33                 ` Otto Moerbeek
2022-02-22 10:39                   ` Ralph Corderoy
2022-02-22 15:53                     ` Otto Moerbeek
2022-02-20 17:29                 ` Derek Fawcus
2022-02-17 22:00               ` David Arnold
2022-02-18  9:58               ` Tom Ivar Helbekkmo via TUHS
2022-02-16 14:34     ` Ralph Corderoy [this message]
2022-02-16 19:08   ` Diomidis Spinellis
2022-02-16 20:55     ` John P. Linderman
2022-02-16 21:17       ` Andrew Hume
2022-02-16 21:59       ` Marshall Conover
2022-02-17  5:51     ` arnold
2022-02-17 22:09     ` Will Senn
2022-02-16  0:35 ` Andrew Hume
2022-02-16  8:02 ` Thomas Paulsen
2022-02-16 14:05 ` [TUHS] Shower of Dogs Ralph Corderoy
2022-02-16 14:09   ` Andrew Hume
2022-02-16 15:01     ` Larry McVoy
2022-02-16 16:57     ` Douglas McIlroy
2022-02-16 17:03     ` Dennis Boone
2022-02-16 17:18       ` Warner Losh
2022-02-16 14:09   ` Chet Ramey
2022-02-16 14:35     ` Ron Natalie
2022-02-16 14:41     ` Ralph Corderoy
2022-02-16 15:08   ` Rich Morin
2022-02-16 21:21     ` Dave Horsfall
2022-02-16 21:25       ` John Cowan
2022-02-17  3:31         ` Chet Ramey

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220216143445.7C4EE2111F@orac.inputplus.co.uk \
    --to=ralph@inputplus.co.uk \
    --cc=tuhs@tuhs.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).