From mboxrd@z Thu Jan 1 00:00:00 1970 From: bakul@bitblocks.com (Bakul Shah) Date: Thu, 15 Feb 2018 18:09:29 -0800 Subject: [TUHS] Happy birthday, Niklaus Wirth! In-Reply-To: Your message of "Thu, 15 Feb 2018 19:51:14 -0500." References: Message-ID: <20180216020944.AF0ED156E80B@mail.bitblocks.com> On Thu, 15 Feb 2018 19:51:14 -0500 Dan Cross wrote: Dan Cross writes: > > On Thu, Feb 15, 2018 at 7:01 PM, Dave Horsfall wrote: > > > On Wed, 14 Feb 2018, Toby Thain wrote: > > > >> ALGOL, one of the most influential languages ever, with just about every > >>> programming language in use today tracing its roots to it. > >>> > >> > >> Worth mentioning one significant exception: the Lisp family. > >> > > > > I know about LISP (and even used it); it's on my history list. > > > > Actually, I can't think of any language that derived exclusively from LISP > > (other than Scheme etc)... Oh, and EMACS :-) > > > > There were (and are!) a whole bunch of dialects of Lisp: Common Lisp and > Scheme might be the best known, with Clojure a modern entrant. Arc is sort > of a thing. Most folks know about emacs Lisp. All of these derive from the > original Lisp. Scheme's lexical scope and block structure came from Algol. The rest from Lisp. The joke was that the shortest and longest language specs were of lisp dialects. The C++ spec may be longer now. > But there were a whole slew of historical dialects descended from Lisp 1.5: > MacLisp, InterLisp, FranzLisp, Lisp Machine Lisp, the original variant > implemented by Symbolics before they adopted Common Lisp, Portable Standard > Lisp...and any number of others that were implemented as extension > languages: AutoLisp from AutoCAD, the aforementioned Emacs Lisp, the IIRC AutoLISP came from David Betz' Xlisp. Before it became a superset of Scheme. > So, how's this relevant to Unix? Well, I'd like to know more about the > historical interplay between the Unix and Lisp communities. What about the > Lisp done at Berkeley on the VAX (Franz Lisp). > > One of the things that strikes me about Lisp and Unix is the conceptual > similarity between image based languages (like Lisp) with a REPL and the > Unix "process as virtual machine" model with a shell and set of utilities. > An image is a sort of virtual machine and a REPL is a sort of shell; > callable functions in the REPL are sort of like discrete programs in the > $PATH. To a first order approximation, at any rate. They feel very different to me. Lisp was/is a closed world & its FFI (foreign func. interface) always seemed like an afterthought. In a shell you can string together programs written in any language so long as they input/output text lines. Its pipe symbol allowed infix notation for function composition. As a programming language I prefer Scheme over almost everything else but have to admit that most of my oneliner scripts are in sh and I mostly program in Go these days.