From: tih@hamartun.priv.no (Tom Ivar Helbekkmo)
Subject: [TUHS] RIP John Backus
Date: Mon, 19 Mar 2018 19:40:18 +0100 [thread overview]
Message-ID: <m2y3insyct.fsf@thuvia.hamartun.priv.no> (raw)
In-Reply-To: <6bc3b4da-08df-1a59-30b9-75d95541fdca@gmail.com> (Jon Forrest's message of "Mon, 19 Mar 2018 10:59:00 -0700")
Jon Forrest <nobozo at gmail.com> writes:
> It took a while before the VAX C compiler was good enough, and
> even then, it wasn't cheap. I was in the VMS development group
> at Sybase in the early 1990s and we often hit issues in VAX C,
> and in the VAX Debug support for it.
VAX C was still pretty awful in the late 90s, while their FORTRAN was
really excellent, not least because of the high quality optimizer.
> Back to Unix ...
Agreed. :)
...but first: being Norwegian, I have to plug another really good
FORTRAN compiler; the one in SINTRAN, the operating system for the
Norwegian built mini computers from Norsk Data. They took FORTRAN-77,
and added even more bling to it, resulting in a compiler that could
accept the following program:
C This FORTRAN progam may be compiled and run on a Norsk Data
C computer running SINTRAN and the FTN compiler. It uses only
C FORTRAN reserved words, and contains just one numerical
C constant, in a character string (a format specifier). When
C you run it, it prints a well known mathematical construct...
C
C Even FORTRAN is a block structured programming language:
PROGRAM
;PROGRAM;INTEGERIF,INTEGER,GOTO,IMPLICIT;REALREAL,DIMENSION,EXTERNA
AL,FORMAT,END;INTEGERLOGICAL;REALCOMPLEX,DATA,CALL,ASSIGN,CHARACTER
R;DOFORIF=INTEGER,INTEGER;ENDDO;INTEGER=IF+IF;GOTO=INTEGER*INTEGER*
*INTEGER*INTEGER-INTEGER-IF;CALLFUNCTION(IMPLICIT,REAL,DIMENSION,EX
XTERNAL,FORMAT,END,LOGICAL,COMPLEX,DATA,CALL,ASSIGN,CHARACTER);CALL
LSUBROUTINE(IMPLICIT,LOGICAL,GOTO,IF,INTEGER);END;SUBROUTINEFUNCTIO
ON(IMPLICIT,REAL,DIMENSION,EXTERNAL,FORMAT,END,LOGICAL,COMPLEX,DATA
A,CALL,ASSIGN,CHARACTER);RETURN;END;SUBROUTINESUBROUTINE(IMPLICIT,L
LOGICAL,GOTO,IF,INTEGER);INTEGERGOTO,IMPLICIT(GOTO),LOGICAL(GOTO),I
IF,INTEGER,EXTERNAL,RETURN;DOFOREXTERNAL=IF,GOTO;DOFORRETURN=INTEGE
ER,EXTERNAL-IF;IMPLICIT(RETURN)=LOGICAL(RETURN)+LOGICAL(RETURN-IF);
;ENDDO;IMPLICIT(IF)=IF;IMPLICIT(EXTERNAL)=IF;DOFORRETURN=IF,GOTO-EX
XTERNAL;WRITE(IF,'(''$ '')');ENDDO;DOFORRETURN=IF,EXTERNAL;WRITE(I
IF,'(''$''I4)')IMPLICIT(RETURN);ENDDO;WRITE(IF,'( /)');DOFORRETURN=
=IF,GOTO;LOGICAL(RETURN)=IMPLICIT(RETURN);ENDDO;ENDDO;END
Anyone care to guess what the output looks like?
-tih
--
Most people who graduate with CS degrees don't understand the significance
of Lisp. Lisp is the most important idea in computer science. --Alan Kay
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 487 bytes
Desc: not available
URL: <http://minnie.tuhs.org/pipermail/tuhs/attachments/20180319/cbfb2413/attachment.sig>
next prev parent reply other threads:[~2018-03-19 18:40 UTC|newest]
Thread overview: 58+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-03-16 21:52 Dave Horsfall
2018-03-16 23:42 ` Dan Stromberg
2018-03-17 0:08 ` Dave Horsfall
2018-03-17 0:26 ` Arthur Krewat
2018-03-17 0:36 ` Dave Horsfall
2018-03-17 1:40 ` Charles H Sauer
2018-03-17 1:57 ` Nemo
2018-03-17 7:20 ` Bakul Shah
2018-03-17 13:43 ` Clem Cole
2018-03-17 17:06 ` Steve Simon
2018-03-17 19:15 ` Pierre DAVID
2018-03-17 19:41 ` Charles Anthony
2018-03-18 11:02 ` Steve Simon
2018-03-17 19:22 ` Tim Bradshaw
2018-03-17 19:28 ` Mike Markowski
2018-03-18 18:51 ` Paul Winalski
2018-03-18 21:07 ` Clem Cole
2018-03-19 14:50 ` Dan Cross
2018-03-19 15:43 ` Clem Cole
2018-03-19 15:46 ` Clem Cole
2018-03-19 17:39 ` Paul Winalski
2018-03-19 17:43 ` George Michaelson
2018-03-19 18:16 ` Steve Nickolas
2018-03-19 17:48 ` Clem Cole
2018-03-19 17:59 ` Jon Forrest
2018-03-19 18:40 ` Tom Ivar Helbekkmo [this message]
2018-03-19 19:40 ` Arthur Krewat
2018-03-19 15:55 ` Clem Cole
2018-03-19 16:58 ` [TUHS] FORTRAN Steve Johnson
2018-03-19 17:32 ` Jon Forrest
2018-03-20 17:42 ` Paul Winalski
2018-03-20 17:47 ` George Michaelson
2018-03-19 18:47 ` Larry McVoy
2018-03-20 18:15 ` Dan Cross
2018-03-20 19:55 ` Ron Natalie
2018-03-20 20:21 ` Paul Winalski
2018-03-20 20:27 ` Warner Losh
2018-03-21 8:10 ` Peter Jeremy
2018-03-21 20:56 ` Ron Natalie
2018-03-21 21:15 ` Dennis Boone
2018-03-20 21:36 ` Clem Cole
2018-03-20 21:59 ` Ron Natalie
2018-03-20 23:00 ` Bakul Shah
2018-03-21 13:48 ` Paul Winalski
2018-03-21 20:55 ` Ron Natalie
2018-03-18 21:26 ` [TUHS] RIP John Backus Tim Bradshaw
2018-03-19 0:26 ` Steve Johnson
2018-03-19 14:26 ` Warner Losh
[not found] <mailman.17.1521243734.3788.tuhs@minnie.tuhs.org>
2018-03-17 14:47 ` Paul McJones
2018-03-17 15:54 ` Dave Horsfall
[not found] <mailman.19.1521302091.3788.tuhs@minnie.tuhs.org>
2018-03-17 17:49 ` Paul McJones
2018-03-17 18:52 ` Arthur Krewat
2018-03-18 3:39 ` Greg 'groggy' Lehey
2018-03-18 7:35 ` Otto Moerbeek
[not found] <mailman.21.1521314548.3788.tuhs@minnie.tuhs.org>
2018-03-17 20:01 ` Paul McJones
2018-03-17 20:14 ` Paul McJones
2018-03-17 22:27 ` Steve Johnson
2018-03-18 13:33 Noel Chiappa
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=m2y3insyct.fsf@thuvia.hamartun.priv.no \
--to=tih@hamartun.priv.no \
/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).