this post was submitted on 23 Nov 2023
1 points (100.0% liked)

Lisp

53 readers
3 users here now

founded 1 year ago
MODERATORS
top 6 comments
sorted by: hot top controversial new old
[–] theangeryemacsshibe@alien.top 1 points 1 year ago (2 children)

But the thing that unites these tools is that they are grafts: they are Lisp tools that run inside C-based OSes which come from a profoundly different school of computer design.

Please stop with this rubbish narrative - you even say later that Medley supports Common Lisp, and the Maclisp Lisp machine lineage did too. They're all von Neumann, so not that profoundly different either. (See prior on RISC and high level languages too.)

[–] lproven@alien.top 1 points 1 year ago (2 children)

Please stop with this rubbish narrative

Let me explain the general context here, because I don't think this is rubbish at all.

What I am talking about is the general design of Lisp-based OSes, such as OpenGenera and Medley, or indeed Smalltalk, as compared to OSes built from statically-compiled languages such as C, C++, Modula-2, Oberon, and so on.

This is the same thing Steve Yegge was talking about in a different blog post of his:

https://steve-yegge.blogspot.com/2007/01/pinocchio-problem.html

Which happened to come up today here:

https://www.scattered-thoughts.net/writing/there-are-no-strings-on-me/

It's also one of the overarching themes of loper-os.org.

If one is using Emacs on a Lisp OS, and one changes the definition of a function that, say, displays a window title bar or something, then the whole OS reflects that immediately, Emacs included.

If you did it in, say, Linux with TWM, nothing changes until you recompile and reboot.

On a Lisp OS, Emacs was just part of the whole, and you could change something in Emacs and the OS reflected it.

But if you are on Linux using Emacs with SLIME to edit some SBCL code, when you change the Emacs Lisp code, nothing happens to your SBCL code. Change the SBCL code and nothing changes in Emacs.

They are in little isolated boxes, which can talk but are not interconnected... even if Emacs is the editor used by SBCL.

Interlisp is perhaps the only extant FOSS Lisp environment where this can still be observed. That's why I mentioned it.

[–] corbasai@alien.top 1 points 1 year ago (1 children)

I definitely Agree (despite to our CL-locals). But Lisp Machines may(must) have some analogs of Jail|chroot|zones with stable ABI. Versioned or tagged. It is not rocket science. Look at Mirage OS,... not the same... but it works

[–] zyni-moe@alien.top 1 points 1 year ago

But Lisp Machines may(must) have some analogs of Jail|chroot|zones with stable ABI

No they did not have any of that.

[–] theangeryemacsshibe@alien.top 1 points 1 year ago

What I am talking about is the general design of Lisp-based OSes, such as OpenGenera and Medley, or indeed Smalltalk, as compared to OSes built from statically-compiled languages such as C, C++, Modula-2, Oberon, and so on.

The following is kinda preaching to the choir, but no disagreements there. My point is that Interlisp and Lisp Machines have Common Lisp support, so CL programs don't necessarily run on static OSes.

[–] zyni-moe@alien.top 1 points 1 year ago

Please stop with this rubbish narrative - you even say later that Medley supports Common Lisp, and the Maclisp Lisp machine lineage did too. They're all von Neumann, so not that profoundly different either.

I was not born in the days when d-machines were really alive, and also on the wrong side of the iron curtain. but I have a friend who used them quite seriously and also Genera. He does not read reddit, but I asked him. He wrote this:

Oh that's funny: that person has never used a d-machine and has no idea what they're talking about at all. D-machines were about as utterly different from Unixoid systems as it's possible to be and still be a computer. I mean, really, they were just this completely alien thing that clearly had some influence from the fae in their design and working.

And the whole 'they ran Common Lisp': they ran Common Lisp eventually. I think Lyric had some CL but not very well, Medley had a pretty complete CL without CLOS which probably arrived later. They were essentially dead by the time they had CL.

Describing the current Interlisp thing as a 'graft' is pretty good. Maiko implements something that looks enough like a d-machine that sits on top of a Unix box. In the early days of it (we never used it very seriously once the hardware died as it was very expensive then and seemed like a mad waste of a perfectly good Sun) you could take a sysout from a d-machine and boot it on the emulator and it would be fine.

But actually it's not really a graft: it's different from that. A graft is something you do to attach an apple tree to the root system of another apple tree. But they're both apple trees. What the Interlisp project is doing is attaching a butterfly to the root system of an apple tree or something. In such a way that the butterfly doesn't notice it's now part of a plant.

Genera was much less alien, but still pretty alien.