Étoilé was so promising….the idea of using OpenStep (via GNUstep) infrastructure in ways that went beyond NeXTstep or Mac OS X. It felt like an even deeper embrace of the Smalltalk influences of the OpenStep API to enhance the desktop computing experience. Étoilé wasn’t merely a clone of NeXTstep or Mac OS X; it was its own thing that could’ve been a compelling contender to KDE, GNOME, and even macOS.
Unfortunately Étoilé seems to have been inactive for a decade, and even Apple seems to be abandoning its Xerox PARC influences as the old guard retires and passes away (RIP Steve Jobs, Larry Tesler, and Bill Atkinson). Ever since Apple struck gold with the iPhone and derivative platforms, Apple hasn’t been the same.
I’d like to see the ideas of Smalltalk and Lisp machines revisited for the modern era as a model for workstation-class personal computing. Smalltalk and Lisp environments pride themselves on flexibility and malleability (though it’s understandable to rethink some of these things in an era where security is very important), while mainstream personal computing these days feel less like productivity boosters (remember “the bicycle for the mind”) and more like advertising platforms and anti-competitive, rent-seeking moats.
> Apple seems to be abandoning its Xerox PARC influences as the old guard retires and passes away (RIP Steve Jobs, Larry Tesler, and Bill Atkinson)
Haven't those people not had any influence on Apple for a very long time now? Steve has been dead for 15 years, Larry & Bill last worked there ~ 30 years ago.
There's definitely been a "change of the guard" at Apple, but it's not from Xerox PARC people...
Yep, the comment you're replying to is off by a few decades
Objective-S builds in these directions, starting with the linguistic foundations. Note: author speaking.
Those linguistic foundations take the form of a CLOS-like metaobject protocol, but organized not on OO lines, but rather on software-architectural lines, so including OO as a subset.
On top of the metaobject protocol sits a roughly Smalltalk-ish language, with extensions for dataflow ("!", "?", so CSP-inspired, but not CSP-based, fewer processes) in-process-REST like data access and identifiers (URIs in the language) and last not least component connection (→).
With that, you have a good basis for diverse environments that blend the Smalltalk and Unix/Plan 9 styles.
last time i was looking into this to try myself i never bothered to to check github but today i looked and there it is:
https://github.com/mpw/Objective-Smalltalk
i hope to give this a try soon and learn something new ^^
Modern computing is bloat for the mind.
> Modern computing is bloat for the mind.
and for the computer also.
I love the ideas of Smalltalk and Lisp machines too. Do you know of anything promising in that area? (other than Ink & Switch)
Are you using Pharo already? If not, give it a go: https://pharo.org/
For taking notes and stuff you'd otherwise do in Jupyter or Livebook, try GT: https://gtoolkit.com/
It's not an OS, but you can just abstract over OS actions within either and keep them as your main interface, similar to how some people rarely leave Emacs.
https://newspeaklanguage.org/ ...?
David Chisnall (one of the main developers behind Étoilé) has been working full-time on CHERI for the last decade to bring hardware that enables Étoilé's vision.
> I’d spent a lot of the previous years on Étoilé, which was a project to build a user-focused desktop environment that was built out of composable components with end-user programming as a key focus. We were inspired by the STEPS project at VPRI, which tried to build an entire system in under 20,000 lines of code. Our rule was simpler: we aimed to keep individual components to under 10 KLoC, which is small enough that a single person can understand it. This meant that we needed to be able to both use expressive languages and build expressive DSLs. We were starting from an Objective-C base, which gave us a nice model for late-bound components but brought along a lot of C baggage.
> Unlike STEPs, I didn’t want to rewrite the world in high-level languages. I wanted to use things like libavcodec and libavformat as-is, but without bugs in them being able to destroy the invariants that higher-level software depended on. I’d tried building isolation mechanisms with the MMU and found it severely limiting. I’d also looked at Mondrian Memory Protection, but the table-based approach didn’t compose well with language-level abstractions. Early CHERI wasn’t the right thing either, but it was close enough that I felt I could evolve it into the right shape.
> Most of my fingerprints in CHERI ISAs are with that goal in mind. I want to be able to compile existing C/C++ libraries for a CHERI compiler and use them safely from higher-level languages and use them directly. I’ve written a bit about this before:
> https://www.linkedin.com/pulse/i-dont-care-memory-safety-dav...
> I want to be able to have documents embed scripting-language programs that can directly call large native libraries and still have strong guarantees that my system won’t be compromised. The key point is this observation:
> Isolation is easy, (safe) sharing is hard.
> It’s trivial to fully isolate two components. Separate cores, sandboxed processes, or WebAssembly sandboxes can give this kind of isolation, depending on the degree of isolation that you need. Most interesting things are built from communicating components and keeping things mostly isolated, but able to communicate safely, is much harder. For example, Rust says FFI is unsafe, but if you wanted it to be safe except that objects passed from Rust to C may contain arbitrary bit patterns after the call, that’s harder. You can do it with deep copies, but that’s a lot of overhead and very hard to do in the general case. You can do it with CHERI fairly easily, including richer things like deep immutability (in CHERIoT, we can also provide shallow and deep no-capture guarantees).
https://lobste.rs/s/ttr8op/lobsters_interview_with_david_chi...
Thank you for sharing this interview link! I didn’t know that Étoilé was inspired by Alan Kay’s STEPS project. It makes a lot of sense. It would have been really cool to see a desktop environment that pushed Alan Kay’s ideas further.
Chisnall has stated several times over on Lobsters that he's thinking of basing is future project on Arcan (https://arcan-fe.com/). It's a very interesting project.
This thing about Arcan is that the writing about it is almost deliberately incomprehensible.
There are yt-videos embedded on the site. They may be helpful.
Otherwise give https://lobste.rs/s/w3zkxx/lobsters_interview_with_bjorn_sta... a try?
Yes, it's good! And I have a lot of sympathy for what I perceive to be Stahl's goals, and indeed, his methods. But I think I need an intercessor or interpreter to his prose style. This is probably a me problem and not a him problem, to be maximally fair.
Björn's writing style is intentional. He tries to make it understandable for people that have deeper understanding of the subject, but to keep out the people that doesn't know enough. It's primarily to convey what Arcan is to the people that can do something with Arcan, but to avoid attention that will ultimately lead to flame wars.
Ståhl _hates_ attention, both from being a quite private individual to having problem with weirdos showing up at his apartment when some of his videos have gone viral here on HN. (Everyone's home addresses are public here in Sweden)
Sounds nice, but back in the day I couldn’t get it to work…