3 ms·
I realized this evening I should have said Lisp/Smalltalk. I would also agree regarding market conditions. One other thing, since this textbox is here and you
by pnathan 8y ago
I realized this evening I should have said Lisp/Smalltalk.
I would also agree regarding market conditions.
One other thing, since this textbox is here and you're contemplating similar thoughts: the Modula-2/Oberon OS system in the 90s deserves some serious re-analysis and recognition of what it did do. My memory of a paper - and I haven't found this source when I went looking for it - is that it had a full networked productivity suite suitable for all users of the CS department? University? hosting Oberon's development. And it was used heavily in that place. It was a hardware-software-language codesign project, if I remember right. Maybe the last of its kind in the wild outside of the Linux/DOS projects with C and Intel processors.
I do agree that someone who dropped a reasonably decent starting point for the Next Lisp OS in a fashion that multiple people could contribute to could get some traction and power. A lot of water has passed under the bridge since Lisp machines went away, and the model users and environments are substantially different. My reckoning is that a genuinely next-gen system would wind up with a trusted-compute base, maybe even a trusted-compute kernel, using Rust or other forward-looking technology, with the lisp system sitting on top. Broadly: rust would provide syscalls & drivers, then boot sbcl for the init and then the main user.
It would be a fascinating exercise in modern OS & userland redesign. I think there's probably a PhD in it; as far as I know, that world has lain fallow for a few decades now in academia.
- pjmlp 8y agoETHZ, Swiss Federal Institute of Technology Zurich. http://www.progtools.org/article.php?name=oberon§ion=compilers&type=tutorial http://www.progtools.org/article.php?name=oberon§ion=com...
- pnathan 8y agoThank you! I must have read that page years ago, and I lost the link.
- scroot 8y agoThere are a lot of lessons from the 70s/80s even 90s that are completely absent from today's personal computing environments, and they are ripe for a comeback. Oberon/Genera-like systems had one thing right: make your system reasonably transparent all the way down. Design hardware for the system — not the other way around. Smalltalk systems went a step further, showing not only what true OO could be like, but that you could layer relationships of complexity atop one another and allow regular users to peek under the hood, at varying degrees of detail and difficulty, as they needed. Apple had something close to this with Hypercard in the 80s and 90s. Unlike that previous era, we have big advantages today that make me think the world is ready for reconsider all of this. The first is that we have more universally adopted standards for exchanging data (we don't bitch as much about compatibility across systems). The second, and somewhat related point, is that we can assume high network connectivity most of the time (itself a kind of universal standard). As I've said before: all a new system needs in order to be "viable" to the existing world is a web browser. Everything else can be rethought. Today I will be doing yet again another project for a client who simply needs to have data pulled in from a bank as CSV and inserted into their existing Excel template. This is in theory a very simple programming task. But the ecosystem and our environments make it tremendously and unnecessarily difficult. If we had "real" personal computing, they wouldn't even need someone like me.
- pnathan 8y agoBroad agreement about the network parity aspect. If you can have a working TCP/IP stack /and/ can run Chrome, you have the ability to pretty much be "usable" by many users. I'd like to stop the argument there though and ask, first, why bother for a research project? Not that it's useless, but if you're trying with a few other hackers to reconceptualize OS layout and write the relevant tools for your system, you've got enough on your back. Arguably in this hypothetical next-gen system, if you can provide an interface that looks like a Linux container, you can run a Linux application like Chrome and be done with it. (and even more to my point original point of things could have been very different: web browsers are essentially reimplementing a cross-platform GUI without a toolkit and with a custom language (JS). Maybe it's time we just had plain old network applications without a web browser..... but that's a different discussion, a different musing).
- scroot 8y agoBy web browser I didn't necessarily mean Chrome. I mean a browser completely re-implemented in the new system, preferably a "live" system of "objects". I realize it's a tall order. But it would solve your issue with network applications, because people could just rip out the objects used the browser and use them elsewhere as they go. As more people adopt this system, they would forget about the browser altogether, since the objects themselves can communicate remotely. In essence: the web browser part would be for adoption, but the system can be so good that it eventually becomes obsolete. > why bother for a research project? We'll never get anything new if we don't. Linux and containers are band-aids. They are not original solutions. We shouldn't be squeamish about re-implementing everything from the ground up. The big problems in personal computing have not yet been solved. If anything, we've been regressing — in the wrong way.
- pnathan 8y agoI see what you mean, but the raw volume of work is an enormous load to carry for a dedicated few.