[HN Gopher] Running Open Genera 2.0 on Linux
___________________________________________________________________
Running Open Genera 2.0 on Linux
Author : GTP
Score : 68 points
Date : 2024-01-18 11:57 UTC (1 days ago)
(HTM) web link (archives.loomcom.com)
(TXT) w3m dump (archives.loomcom.com)
| s1gnp0st wrote:
| We will carry this beautiful artifact forward with us until all
| its lessons have been learned.
|
| There was composability and fine control in these systems that is
| still not present in modern systems. That's not needed for
| everyday consumers, but boy is it lovely when you're a
| programmer.
| pjmlp wrote:
| I feel that during the last two decades only Java and .NET
| ecosystems have come close to the experience, including Android
| and Powershell/Windows/.NET into the mix, naturally with
| caveats and plenty of "yes but" counter arguments.
|
| I consider a lost opportunity not to have turned ChromeOS into
| a kind of Smalltalk like experience with a mix of Flutter/Dart.
|
| Naturally one can argue Common Lisp experience with Franz and
| Lisp Works, Raket, or Smalltalk, are the closest to the Lisp
| Machine ideas, but their mainstream opportunity is now lost.
| wk_end wrote:
| Both the Java and .NET ecosystems are monumental (in every
| sense of the word) engineering accomplishments, but they
| don't strike me as very similar to the ultra-dynamic,
| introspective Lisp Machine experience. Can you elaborate on
| that a little bit?
|
| FWIW, the browser (though still far off) feels closer to me,
| with the ability to instantly pop open a DevTools console and
| inspect the state of everything, as does Apple's Cocoa-based
| stuff from my limited exposure to it, maybe not surprising
| given its Smalltalk heritage.
| pjmlp wrote:
| You have to think about the whole ecosystem and not only
| the VM.
|
| Dynamic nature of the runtime, being able to plug agents,
| changing code dynamically, the IDE experience inherited
| from Smalltalk vendors that jumped into Java, VisualVM and
| JFR, ETW, runtime APIs to the JITs, self hosted
| implementations, nowadays out of fashion, sending bytecodes
| for RPCs and network agents (RMI, .NET Remoting, Jini), are
| some of the reasons.
| GTP wrote:
| I'm too young to have ever touched a lisp machine, but I heard
| many opinions about them. If you used one, could you please
| briefly share your experience?
| EdwardCoffin wrote:
| I think the best description of the kind of thing the lisp
| machines (the Symbolics ones, at least) supported is
| described in this thread mostly carried by Kent Pitman [1].
| I'd at least read all of the comments he wrote as well as
| whatever else you need for the context he is posting in.
|
| Edit: this thread too [2]
|
| [1] https://groups.google.com/g/comp.lang.lisp/c/QzKZCbf-S6g/
| m/K...
|
| [2] https://groups.google.com/g/comp.lang.lisp/c/XpvUwF2xKbk/
| m/X...
| nickpsecurity wrote:
| Well, it's a combination of the hardware, OS, IDE, and
| language. Modern languages and VM's have caught up to many
| features of the Lisp machine. I've read lots of people's
| comments about them along with its documentation. Let me
| highlight a few things you might still like.
|
| The language is highly dynamic, supports types for better
| speed, macros let it rewire itself to better express
| concepts, it is interpreted for instant development, still
| compiled with good performance, safer by default than many
| compiled languages, and you can edit the code and save state
| of running programs. I've just named off advantages of all
| kinds of programming languages all mixed into one. The
| flexibility was so strong that, as new paradigms were added
| (eg OOP, aspects), they could just bring in a library to make
| the language itself do that.
|
| Aside from live debugging, my favorite feature when trying
| Lisp was per-function, incremental compilation.: make a
| change within a function, press a button, that individual
| function was compiled (sub-1-second), and that got loaded
| into the system for live interactions. I could iterate about
| as fast as I could think or type with the code still being
| fairly quick. It was mind blowing.
|
| Today's machines have OS's in one language, supporting
| libraries might be in another, there's often a runtime with
| its own style, the app language itself for the logic, and
| usually one for the web browser. The mismatches between these
| languages can cause all kinds of headaches. Debugging them
| takes different tools. In a Lisp Machine, everything from the
| OS to the IDE to your apps were written in Lisp. IIRC they
| came with source. Any failure in any layer loads up in the
| same IDE with code in same language.
|
| The IDE was also fully-featured for its time. Today, we have
| a lot of good IDE's. I don't think most of them share a
| language, source, and libraries with your apps, though. I'd
| like to see a comparison between top IDE's today and the Lisp
| Machine to see where today's tooling is stronger or weaker.
|
| Those are a few things that come to mind. I assure you that
| my experience trying to code in native languages was way
| different in both development speed and debugging. Learning
| Python now, it's good for rapid development but not as
| flexible or compiled. Lisp would give me all that.
|
| Many more ecosystems are using Python, though. By using
| Python, I get to use every library they build, guide they
| write, and maybe get paid for my code. Odds of all of that go
| down when using Lisp. Such social factors, along with high
| cost of Lisp Machines, are a huge part of why they
| disappeared. Less-powerful languages are going strong. If
| using a Lisp (eg Clojure), it's often tied to platforms
| written in non-Lisp languages.
| lispm wrote:
| > supports types for better speed
|
| AFAIK, Symbolics Genera mostly ignored all static type
| declarations at compile-time. Thus there was no speed
| effect from static type declarations.
| LispSporks22 wrote:
| I love building software from within the system that runs it. I
| really hate the edit compile run/ maybe debug cycles of popular,
| "modern" software development.
| coliveira wrote:
| Nowadays the closest you can get to this is either Smalltalk
| (using squeak for example) or, going to the other side of the
| spectrum, Forth (using gforth for example).
| chx wrote:
| There are other people still alive who know Forth? :) I
| thought we died out.
| Zambyte wrote:
| Obviously this is more true to actual Lisp machines than Emacs,
| but in practice how different of a UX would this be? Ignoring the
| huge ecosystem around Emacs, it seems like the main difference is
| being able to save the application state and restore it at a
| later time. Are there any other major differences?
| pjmlp wrote:
| Think about the bootloader landing on Emacs, being graphical
| based not text, compiling elisp to native code, the image
| based, systems programming forms for elisp, the whole OS
| infrastructure and graphical applications, that is how much it
| is missing from Emacs.
| lispm wrote:
| see for example two Symbolics applications demoed:
|
| https://www.youtube.com/watch?v=RQKlgza_HgE
|
| first demo is about Paintamation, a 2,5d paint and animation
| application
|
| the second demo is demoing the 3d modeler and the 3d animation
| application
|
| running on the Symbolics with a b&w console, a color screen &
| framebuffer, a Lisp keyboard and a pen tablet
|
| All the code was written in object-oriented Lisp.
| malkia wrote:
| Completely unrelated, but I think "symbolics.com" was the
| absolutely first domain registered. Also thanks for the video
| :) :) :)
| lispm wrote:
| > but I think "symbolics.com" was the absolutely first
| domain registered
|
| no quite, there were a few earlier domains registered. But
| it's the first .com domain registered.
| chx wrote:
| More like created, registration process was not open.
|
| Was there anything but the darpa domains and nordu.net
| before symbolics?
| agumonkey wrote:
| hehe, I rewatched this just two days ago, it's still very
| impressive. Had a symbolics relapse after finding about kaveh
| kardan involvment with them and his blog/snippets
| https://scribe.rip/@kaveh808/rediscovering-common-
| lisp-57f5c...
| zeroclicks wrote:
| This sounds like a terrible way to run a lisp emulator. One shell
| command after another which assume one has the apt(1) package
| manager available on their system.
|
| Maybe the title of the article is poorly done.
|
| The easiest way to run a lisp machine is just to start emacs
| (there are ports for various operating systems) or try something
| like racket where you have a REPL with graphics and other goodies
| installed.
|
| I know HN loves lisp, but putting this article on the front page
| is a good way to deter lisp adoption.
| wk_end wrote:
| You can argue that Emacs is a "Lisp machine", in that it's an
| environment you could conceivably think of as a kind of virtual
| "machine" in which you can run a particular Lisp (although
| arguably Elisp isn't what most people mean by Lisp), but this
| is about Lisp Machines[0], which are very specific historical
| computers.
|
| I hope it would go without saying to anyone looking to adopt
| Lisp that this is for historical interest* only and you should
| instead install a modern Lisp like SBCL or what have you.
|
| [0] https://en.wikipedia.org/wiki/Lisp_Machines
|
| * (nd IMO its the sort of historical interest that indeed
| belongs on the front page of HN)
| zeroclicks wrote:
| You're right that "Lisp Machines" refer to a very peculiar
| point in time, available to only a very small number of
| people.
|
| The article even mentions: > This was all accurate as of
| around 2018, but please be aware that things may have changed
| since then!
|
| There's no reason this should appear on the frontpage of a
| "news" site.
| wk_end wrote:
| Based on the age of your account, you're new here, so...for
| better or worse, things that aren't "News" regularly are
| popular on Hacker News. Even if it's not new, it's can
| still be new to one of the lucky 10,000.
| lispm wrote:
| There are a lot of simple ways to run a Lisp system.
|
| This is a very different thing, it's a Lisp Machine operating
| system running on a CPU emulator (~ from mid 90s). With its own
| Lisp, process scheduler, garbage collector, GUI, X11 client,
| file systems, network stacks, various network client and
| servers, configuration system, integrated development
| environment, database, ...
| mepian wrote:
| No, the title is absolutely fine. It is you who are confused.
| Neither Emacs nor Racket are Lisp machines. Open Genera is the
| official emulator of the last actual "machine" (a physical item
| that sits on your desk) series that was designed by the people
| who originally invented the term "Lisp machine" before someone
| started to misuse it.
| jjwiseman wrote:
| When a site is defined, Genera calls (si:enable-who-calls :new)
| automatically for you.. But we want to enable who-calls on
| all functions, not just new functions, so we must manually
| set that up (si:enable-who-calls :all)
| This takes a few minutes to run.
|
| My god, it takes minutes to run now? How long did that take to
| run on the original hardware?
| lispm wrote:
| On my Apple M2 Pro it runs in 15 seconds on a large world.
|
| A real Ivory machine would be roughly 70 times slower.
| gumby wrote:
| I have never been as productive as I was when I had (the
| terminals for) two of these babies on the desks in my office. I
| can't imagine how much they must have cost in 1985, much less in
| today's dollars.
|
| I do remember each had 8 MW of memory (40 bits IIRC, 36 bit word
| + 4 bits of ECC) and one of them had a color display (!!!) in
| addition to the regular monitor.
|
| And apart from the hardware cost, the machines themselves were in
| a machine room with coax and data run to my office.
| floren wrote:
| So has anyone tried this lately? I'm on an up-to-date Debian
| Stable running X and FVWM, and when I try to run it I see
| https://pastebin.com/7bJk7Mr4 (acts like it can't find the x
| server)
___________________________________________________________________
(page generated 2024-01-19 23:01 UTC)