The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
From: lm@mcvoy.com (Larry McVoy)
Subject: [TUHS] Why Pascal is Not My Favorite Programming Language - Unearthed!
Date: Thu, 31 Aug 2017 10:51:20 -0700	[thread overview]
Message-ID: <20170831175120.GM11202@mcvoy.com> (raw)
In-Reply-To: <CANCZdfoY-t2hyJ6QRPKyAPjTrV47y5Fk8O3P0EUkwfjbktx5Yg@mail.gmail.com>

+1 on everything he said.  Especially the bug chasing.  As a leader,
a lot of what I've done has been to push back on "clever".

On Thu, Aug 31, 2017 at 10:12:43AM -0600, Warner Losh wrote:
> I did a lot of Pascal programming back in the day on my DEC Rainbow with
> Turbo Pascal. Also wrote a compiler for an 'extended subset' of the
> language in my CS compiler's class, which was fun. But by then I'd
> transitioned to C (once Turbo C was available for the IBM-PC, I hacked
> together a TSR so I could run it on the not-too-compatible Rainbow). I
> liked the low level access, but honestly, when I was a kid programming, I
> liked that { was 4 characters shorter than BEGIN and } was 2 shorter than
> END more than anything else...  Also, the generally mono-case of C (at the
> time, this was before I discovered X11's bletcherous CamelCaseStyle) was
> easier on the eyes....  But these days I'm more mellow about this stuff
> since I know that the time to type in the code is tiny compared to the time
> spent chasing down a bug because ++*++foo--; didn't work like you'd
> expected making all the cleverness that went into it wasted...
> 
> Warner
> 
> On Thu, Aug 31, 2017 at 9:26 AM, Eric Wayte <ewayte at gmail.com> wrote:
> 
> > In the mid 80's when I took Programming II as part of my CS degree, I used
> > every Pascal compiler I could get my hands on:  Waterloo Pascal on VM/CMS
> > (mainframe), Turbo Pascal, UCSC p-System on an Apple II, and Kyan Pascal on
> > my Atari 800XL.
> >
> > Fun times!
> >
> > On Thu, Aug 31, 2017 at 10:48 AM, Larry McVoy <lm at mcvoy.com> wrote:
> >
> >> I did a lot of programming in Turbo Pascal (because it was so fast
> >> to compile) and I liked the language OK.
> >>
> >> I was taught data structures in Pascal and later taught using Pascal
> >> and it was a fine teaching language.  I agree with the comment that
> >> it is easier to use right, more guard rails.
> >>
> >> But as you grow up, you want to take off the guard rails once in a
> >> while and Pascal didn't let you do that.  C does that routinely,
> >> which one could argue isn't that great, but it sure is handy.
> >>
> >> On Wed, Aug 30, 2017 at 06:13:39PM -0700, Bakul Shah wrote:
> >> > On Wed, 30 Aug 2017 06:34:54 MDT arnold at skeeve.com wrote:
> >> > > Brian Kernighan was kind enough to find for me everyone's favorite
> >> > > Computing Sceince Technical Report, CSTR 100, "Why Pascal is Not
> >> > > My Favorite Programming Language".
> >> >
> >> > If I may comment on the paper itself....
> >> >
> >> > I used Pascal heavily for about 5-6 years and was also
> >> > involved in implementing a variant of Pascal for a couple of
> >> > years.  And I have used C since 1981.  I have to say I was
> >> > quite happy using Pascal. Some of bwk's criticism (e.g.  re:
> >> > sets) applies to pascal compilers, not the language. There is
> >> > also some misunderstanding (e.g.
> >> >     type apple = integer; orange = integer;
> >> > This is renaming, not a new type).  The array problem got
> >> > fixed somewhat in the 1985 standard, while arrays are not
> >> > even first class objects in C.  Most implementations added
> >> > separate compilation as well (1985 standard considers this an
> >> > implementation issue but does allow you to declare external
> >> > references).
> >> >
> >> > Things I missed in C that were in Pascal:
> >> > - enumerated types (type color = (red, blue, green))
> >> > - subranges
> >> > - nested functions (even if limited)
> >> > - first class arrays (even if limited)
> >> > - sets
> >> > - lexical non-local goto
> >> > - bounds checking
> >> > - arrays that didn't start at 0.
> >> > - function argument checking (K&R C)
> >> > - tagged variant records
> >> >
> >> > All in all, both languages are quite comparable.  Each
> >> > language had their strong points and weak ones. Basically Pascal
> >> > was easier to use /right/ and C more flexible. Pascal code is
> >> > easier to read than C code (even today). It was harder to
> >> > "cheat" in Pascal but the same is a useful feature of C for
> >> > low level work.  To be frank the *main* thing that attracted
> >> > me to C was its conciseness :-) If Unix was written in Pascal
> >> > I would've happily continued using Pascal!
> >> >
> >> > --bakul
> >>
> >> --
> >> ---
> >> Larry McVoy                  lm at mcvoy.com
> >> http://www.mcvoy.com/lm
> >>
> >
> >
> >
> > --
> > Eric Wayte
> >

-- 
---
Larry McVoy            	     lm at mcvoy.com             http://www.mcvoy.com/lm 


  reply	other threads:[~2017-08-31 17:51 UTC|newest]

Thread overview: 68+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-08-30 12:34 arnold
2017-08-30 14:13 ` Eric Wayte
2017-08-30 14:30 ` Michael Kjörling
2017-08-30 14:43   ` Eric Wayte
2017-08-30 17:10 ` Mutiny 
2017-08-30 22:33 ` Michael Parson
2017-08-31  0:55   ` Nemo
2017-08-31 13:29     ` arnold
2017-08-31 18:24       ` Nemo
2017-09-03  0:56         ` Dave Horsfall
2017-09-03 12:07           ` arnold
2017-09-03 22:03             ` Dave Horsfall
2017-09-04 12:12               ` Steffen Nurpmeso
2017-08-31  1:13 ` Bakul Shah
2017-08-31 14:48   ` Larry McVoy
2017-08-31 15:26     ` Eric Wayte
2017-08-31 16:12       ` Warner Losh
2017-08-31 17:51         ` Larry McVoy [this message]
2017-08-31 18:40           ` Clem Cole
2017-08-31 19:25             ` Steffen Nurpmeso
2017-09-01  1:57               ` Nemo
2017-09-01 14:17                 ` Steffen Nurpmeso
2017-09-01 14:28                   ` Arthur Krewat
2017-09-01 14:48                     ` William Cheswick
2017-09-01 15:15                       ` Clem Cole
2017-09-01 15:47                       ` Arthur Krewat
2017-09-01 16:21                       ` Nevin Liber
2017-09-01 16:34                       ` Dan Cross
2017-09-02  0:24                         ` Dave Horsfall
2017-08-31 19:47             ` Toby Thain
2017-08-31 20:37               ` William Cheswick
2017-08-31 20:51                 ` Clem Cole
2017-09-01  0:52                   ` Bakul Shah
2017-08-31 21:46                 ` Larry McVoy
2017-08-31 21:59                   ` Arthur Krewat
2017-08-31 22:08                     ` Larry McVoy
2017-09-01  1:11                       ` Steve Johnson
2017-09-01  0:57                   ` David Arnold
2017-09-01  1:22                   ` Bakul Shah
2017-09-01  1:26                     ` Larry McVoy
2017-09-01  1:51                       ` Kurt H Maier
2017-09-01  2:22                       ` Bakul Shah
2017-09-01  2:27                         ` Larry McVoy
2017-09-01  2:58                           ` Bakul Shah
2017-09-01  3:12                       ` Dan Cross
2017-09-01  2:51                     ` Dan Cross
2017-08-31 20:37               ` Clem Cole
2017-08-31 21:26                 ` Toby Thain
2017-09-01  2:38               ` Dan Cross
2017-09-01  3:59                 ` Toby Thain
2017-09-01 15:57                   ` Dan Cross
2017-09-01 16:08                     ` Toby Thain
2017-09-01 18:15                       ` [TUHS] Future Languages (was Pascal not Favorite...) Steve Johnson
2017-09-01 18:43                         ` ron minnich
2017-09-01 23:33                           ` Chris Torek
2017-09-04 20:55                             ` ron minnich
2017-09-01 20:42                         ` Clem Cole
2017-09-04 20:44                         ` Bakul Shah
2017-09-01 13:46                 ` [TUHS] Why Pascal is Not My Favorite Programming Language - Unearthed! Clem Cole
2017-09-01 14:43                 ` Toby Thain
2017-09-01 15:14                   ` Clem Cole
2017-09-01 16:22                   ` Dan Cross
2017-09-01 19:07                     ` Toby Thain
2017-09-02 13:25                       ` Dan Cross
2017-09-02 15:00                 ` Toby Thain
2017-09-02 15:16 Diomidis Spinellis
2017-09-02 19:53 ` Toby Thain
2017-09-03 14:48 Norman Wilson

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=20170831175120.GM11202@mcvoy.com \
    --to=lm@mcvoy.com \
    /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).