The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
From: Larry McVoy <lm@mcvoy.com>
To: Jon Steinhart <jon@fourwinds.com>
Cc: tuhs@tuhs.org
Subject: [TUHS] Re: SNOBOL and RATSNO [ really pic ]
Date: Wed, 10 Aug 2022 11:02:10 -0700	[thread overview]
Message-ID: <20220810180210.GZ21168@mcvoy.com> (raw)
In-Reply-To: <202208101744.27AHiWOT1220324@darkstar.fourwinds.com>

On Wed, Aug 10, 2022 at 10:44:32AM -0700, Jon Steinhart wrote:
> arnold@skeeve.com writes:
> > Oh, I'm not arguing with any of this. I'm merely noting that
> > you are unusual in your ability to easily visualize pic results
> > from looking at the code.
> 
> Not at all.  I'm a big fan of pic too.  And I've written preprocessors
> for it, such as one that generated GANTT charts.
> 
> To me, the best feature of pic is invisible elements.  As Larry pointed
> out, xfig uses absolute coordinates and is a mess.  When I use pic, I
> usually start out with a big invisible box and hang things off of it.
> That makes it trivial to do things like shrinking or growing just by
> changing the invisible box size.
> 
> In my opinion, the biggest failing of pic comes from the one-way connection
> to troff.  It's really hard to do things like "box that fits this text".

Jon gets it, I'm not the only one.  I do the same thing with a big
invisble box, it gives you a mental place to place things.

Also agree with the "box that fits this text" problem, pic really could
use a sizeof("this text in the current font/point size/line spacing")
that returns x,y.  But I don't see how to do that because pic doesn't
have that info, pic would need to be able to ask troff what those are.

Oh, and I've written my own crappy version of grap(1) that spits out
pic, it was pretty easy.

So at least Jon sees pic like I do and I suspect there are plenty more
who do as well.  Spend some time writing some pic scripts and I suspect
anyone can get good at seeing what it is doing.  It's a super pleasant
little language.

  reply	other threads:[~2022-08-10 18:02 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-08-09 22:18 [TUHS] Re: SNOBOL and RATSNO Douglas McIlroy
2022-08-09 22:25 ` Larry McVoy
2022-08-10 15:05 ` arnold
2022-08-10 17:14   ` Larry McVoy
2022-08-10 17:37     ` arnold
2022-08-10 17:44       ` [TUHS] Re: SNOBOL and RATSNO [ really pic ] Jon Steinhart
2022-08-10 18:02         ` Larry McVoy [this message]
2022-08-10 18:04           ` Jon Steinhart
2022-08-10 18:13             ` [TUHS] Re: pic Michael Kjörling
2022-08-10 18:19             ` Dennis Boone
2022-08-10 18:24               ` Jon Steinhart
2022-08-11  0:10                 ` Dan Cross
2022-08-11 12:13                   ` arnold
2022-08-11 14:34                     ` Dan Cross
2022-08-12  1:52                       ` G. Branden Robinson
2022-08-12  6:46                         ` arnold
2022-08-12 20:49                           ` G. Branden Robinson
2022-08-11  7:37           ` [TUHS] Re: pic's One-way Information Flow. (Was: SNOBOL and RATSNO) Ralph Corderoy
2022-08-10 18:24       ` [TUHS] Re: SNOBOL and RATSNO joe mcguckin

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=20220810180210.GZ21168@mcvoy.com \
    --to=lm@mcvoy.com \
    --cc=jon@fourwinds.com \
    --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).