4 ms·
> Operating System: An operating system is a collection of things that don't fit into a language. There shouldn't be one. I like this one especially. It rings
by dgb23 4y ago
> Operating System: An operating system is a collection of things that don't fit into a language. There shouldn't be one.
I like this one especially.
It rings true if you imagine a world where you have complete control over your machine, you don't worry about possibly external code breaking or extracting your stuff and so on.
But lets just pretend we don't need to worry about these things for some reason. It would be so powerful. And I don't mean you have 'root' privileges, I mean your programming environment owns, controls and _is_ everything that happens. No black boxes, no overhead, nothing. Just _one_ runtime that is integrated all the way down with the expressive power of a Lisp/Smalltalk/Self or similar. It's sad that this doesn't seem like a viable option.
- mch82 4y agoPeople just need to start chipping away at it. Eventually it’ll exist. My favorite inspiration for “chipping away at it” is https://ephtracy.github.io/ https://ephtracy.github.io/ who has been slowly building up the coolest 3D art tools one commit at a time.
- AnimalMuppet 4y agoThe problem with environments like that is that they are never perfect. There's always something that at least some users need that they left out. But, since they're trying to be everything, they don't leave you any way to leave their world to go get something from the real OS, or the bare metal, or wherever "outside" is. So, if you're trying to build an "everything" environment, sure, try to get everything in. But know that you will fail. And therefore, don't trap people. Leave them a way to get "outside".
- dgb23 4y agoIn a sense that's a valid point, but what we have seems inferior in this regard. My machine is running a huge amount of individual, uncoordinated runtimes. Often there's layers and layers of uncoordinated bloat, communication overhead and everyone does his own garbage collection, scheduling format translation, gui rendering and so on. It's incredibly wasteful and the only thing that patches over it is that my computer is fast enough to handle all this crap. /rant I get that all of this has reasons, often historical. PC/Internet adoption just grew so fast during 80's and 90's that nobody even had the time to think it all through and design a coherent system. Even new OS's and runtimes have to carry over all this legacy stuff. I mean I get it and as a web developer I'm probably more part of the problem than the solution. But boy would computing be simpler, more powerful and expressive if we could just start over and lean on the ideas of (mostly) early, holistic visions and prototypes of personal computing.
- jgerrish 4y agoI mean I get it and as a web developer I'm probably more part of the problem than the solution. Ironic Humblebrag? The developer tools and consoles built into browsers are in some ways a return to the Smalltalk and LISP Machine development ideals I've read about, if you consider the Internet the machine.
- musicale 4y ago> they don't leave you any way to leave their world to go get something from the real OS, or the bare metal, or wherever "outside" is. Pretty sure the idea was and is to run Smalltalk on bare metal. Which you can absolutely do. The more realistic problem is: what if you still need Firefox, or Office, or Photoshop? One solution is probably to run Windows and Smalltalk on a hypervisor. You still get low-level access from Smalltalk (hypervisor calls, hardware access, etc.) without giving up Windows (or Linux, etc.) apps and compatibility. Running a web browser in a hypervisor is also probably a good idea for isolation reasons. Another interesting idea is to run Smalltalk on the JVM (which itself was inspired by the Self and Smalltalk VMs.) You lose some low level access from Smalltalk but you gain interoperability with Java as well as portability.
- jdblair 4y agoEveryone who grew up with 8-bit micros understands what it feels like to know the whole machine.
- timbit42 4y agoI wouldn't say everyone. Most people just played games on them. They would have gotten a game console if their parents hadn't wanted it to be educational.
- pjmlp 4y agoIt almost is though, Type 1 hypervisor + language runtime on cloud deployments