From: arnold@skeeve.com
To: imp@bsdimp.com, arnold@skeeve.com
Cc: tuhs@minnie.tuhs.org
Subject: Re: [TUHS] The UNIX Command Language (1976)
Date: Tue, 01 Dec 2020 09:39:45 -0700 [thread overview]
Message-ID: <202012011639.0B1GdjcD031722@freefriends.org> (raw)
In-Reply-To: <CANCZdfqMtd-CrwUJPVDbc434+hbQEZoYbT-YuTqMmP2Q6yWqwA@mail.gmail.com>
> On Tue, Dec 1, 2020 at 8:39 AM <arnold@skeeve.com> wrote:
> > It was recognized that goto was not necessary if one had proper control
> > structures in a language (if/else, while), and that code with no (or
> > minimal) gotos was easier to read and understand.
Warner Losh <imp@bsdimp.com> wrote:
> This is true for simple flow control. However, when you had to break out of
> multiple levels, or continue not the inner loop, but the middle loop, the
> use of extra booleans sure made the code less understandable than a 'goto'
> a label that stood in for that purpose... This was something that wasn't
> well understood by language designers, and even today C and C++ neither
> have good flow control beyond the basics. Even though both break and
> continue could take an optional count without breaking old code....
Quite true. Modern Bourne shells let you supply a number to break and
continue to specify how many loops to break. Ada, or maybe it was one of
the Modula-X languages, let you put a label on a loop so that you could
say `continue outer' or `break outer' and not need the booleans.
This is something that newer languages (C#, Java, Go, ...) could have picked
up but didn't, which I think is too bad.
Arnold
next prev parent reply other threads:[~2020-12-01 16:40 UTC|newest]
Thread overview: 91+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-11-30 3:10 Joachim via TUHS
2020-11-30 8:30 ` Thomas Paulsen
2020-11-30 13:36 ` Brantley Coile
2020-11-30 15:12 ` Tom Ivar Helbekkmo via TUHS
2020-11-30 15:52 ` Clem Cole
2020-11-30 16:25 ` Dan Cross
2020-11-30 16:38 ` Warner Losh
2020-11-30 16:41 ` Dan Cross
2020-11-30 16:37 ` Larry McVoy
2020-11-30 16:54 ` Clem Cole
2020-11-30 18:13 ` Theodore Y. Ts'o
2020-11-30 18:25 ` John Cowan
2020-11-30 18:37 ` Clem Cole
2020-11-30 20:11 ` arnold
2020-11-30 21:49 ` Will Senn
2020-12-01 2:55 ` Jon Steinhart
2020-11-30 18:46 ` Nemo Nusquam
2021-02-10 20:48 ` [TUHS] troff was not so widely usable (was: The UNIX Command Language (1976)) Greg A. Woods
2021-02-10 21:44 ` Larry McVoy
2021-02-10 22:05 ` Clem Cole
2021-02-11 21:58 ` Greg A. Woods
2021-02-12 5:22 ` George Michaelson
2021-02-12 22:13 ` Dave Horsfall
2021-02-12 22:18 ` Ron Natalie
2021-02-10 22:36 ` Jon Steinhart
2021-02-10 23:05 ` George Michaelson
2021-02-11 0:27 ` Ron Natalie
2021-02-11 0:36 ` Larry McVoy
2021-02-11 1:53 ` Clem Cole
2021-02-11 1:59 ` Richard Salz
2021-02-11 2:04 ` George Michaelson
2021-02-11 2:44 ` Richard Salz
2021-02-11 3:02 ` Steve Nickolas
2021-02-11 4:07 ` Toby Thain
2021-02-11 16:55 ` Ron Natalie
2021-02-11 20:27 ` John Cowan
2021-02-11 2:30 ` [TUHS] troff was not so widely usable Mary Ann Horton
2021-02-11 2:52 ` Larry McVoy
2021-02-11 6:42 ` Andrew Hume
2021-02-11 7:12 ` Rob Pike
2021-02-11 13:06 ` John Gilmore
2021-02-11 17:34 ` Jon Forrest
2021-02-11 18:09 ` John Cowan
2021-02-11 18:43 ` Rich Morin
2020-12-01 3:59 ` [TUHS] The UNIX Command Language (1976) jason-tuhs
2020-12-01 4:03 ` Jon Steinhart
2020-12-01 9:27 ` Steve Nickolas
2020-12-01 15:09 ` Jim Capp
2020-12-01 15:35 ` Toby Thain
2020-12-01 15:38 ` arnold
2020-12-01 16:24 ` Warner Losh
2020-12-01 16:39 ` arnold [this message]
2020-12-01 20:13 ` Rob Pike
2020-12-02 7:08 ` arnold
2020-12-02 7:29 ` Rob Pike
2020-12-01 20:20 ` Steffen Nurpmeso
2020-12-01 20:39 ` Bakul Shah
2020-12-01 21:24 ` Dan Cross
2020-12-01 23:44 ` John Cowan
2020-12-12 19:50 ` scj
2020-12-01 16:47 ` Larry McVoy
2020-12-01 20:13 ` Dave Horsfall
2020-12-01 20:49 ` John Cowan
2020-12-01 16:04 ` Tyler Adams
[not found] <CAMP=X_mO9oawUpHGOvgVtwVTgcmvdXAc5vrE_+s3d2NsH+1HgA@mail.gmail.com>
2020-12-01 0:00 ` Joachim via TUHS
2020-12-01 0:21 ` Dave Horsfall
2020-12-01 2:23 ` Larry McVoy
2020-12-01 3:13 Norman Wilson
2020-12-02 0:31 ` George Michaelson
2020-12-02 1:06 ` Adam Thornton
2020-12-02 17:02 ` John Cowan
[not found] <CAKH6PiWA2uN4m0AGp7VRJTQ6XXDLJQweHoHjx2wN=zQYs1onpA@mail.gmail.com>
2020-12-03 20:31 ` M Douglas McIlroy
2020-12-03 20:37 ` Niklas Karlsson
2020-12-03 20:43 ` Larry McVoy
2020-12-03 20:56 ` Ralph Corderoy
2020-12-03 21:01 ` Ben Walton
2020-12-03 21:12 ` Clem Cole
2020-12-04 0:29 ` Dave Horsfall
2020-12-04 0:43 ` Rob Pike
2020-12-04 0:48 ` Larry McVoy
2020-12-04 1:25 ` Dan Cross
2020-12-04 9:27 ` arnold
2020-12-04 11:33 ` Andy Kosela
2020-12-04 13:14 ` Tyler Adams
2020-12-04 13:17 ` Niklas Karlsson
2020-12-04 13:22 ` Tyler Adams
2020-12-04 13:25 ` Niklas Karlsson
2020-12-04 0:45 ` George Michaelson
2020-12-04 1:10 ` Bakul Shah
2020-12-04 1:17 ` George Michaelson
2020-12-03 20:51 ` M Douglas McIlroy
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=202012011639.0B1GdjcD031722@freefriends.org \
--to=arnold@skeeve.com \
--cc=imp@bsdimp.com \
--cc=tuhs@minnie.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).