Path: csiph.com!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail From: Bob Eager Newsgroups: alt.folklore.computers,comp.sys.raspberry-pi Subject: Re: Is it a lost cause? Date: 3 Jul 2016 00:55:11 GMT Lines: 37 Message-ID: References: <20160613210220.7d9874b5@maxa-pc.cpe.bvcom.net> <440983857.489168038.520479.peter_flass-yahoo.com@news.eternal-september.org> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Trace: individual.net enob1vgXiF3xrKnU68nw7ALIzB2NcONjTHZTWXHfc2oyx7SCdn Cancel-Lock: sha1:MIEhvBBycPWUrh+olmxGt9N6Qm0= User-Agent: Pan/0.139 (Sexual Chocolate; GIT bf56508 git://git.gnome.org/pan2) Xref: csiph.com alt.folklore.computers:166360 comp.sys.raspberry-pi:12309 On Sun, 03 Jul 2016 00:44:52 +0000, Martin Gregorie wrote: > On Sat, 02 Jul 2016 21:56:46 +0000, Bob Eager wrote: > >> I'm not sure if I mentioned it is *this* group recently, but BCPL had >> that. Only worse. >> > I don't remember you doing so. > > My only brush with BCPL was when I found a article including a source > listing of the GPM. As it was something I wanted to play with and I > didn't have a BCPL compiler, I hand translated it into Algol 60 on a > 1900. BCPL, or the subset used to write the GPM, was evidently not that > hard to read since the Algol version ran almost straight away and > successfully generated 'One Man Went to Mow', which I used as a test > piece. If you were interested in GPM, try ML/I. See: http://www.ml1.org.uk OK, in BCPL you could modify the *label* (using past tense although it's still around). Labels were first class objects; every label declared a storage cell (BCPL was typeless), and the cell was initialised to contain the address of the code being labelled. A GOTO retrieved the contents of that cell and placed it in the PC (e.g. by using a compiled indirect jump). But *you could assign another value to the label*. And make that GOTO go somewhere else! -- Using UNIX since v6 (1975)... Use the BIG mirror service in the UK: http://www.mirrorservice.org