Hacker News new | ask | show | jobs
by voldacar 1708 days ago
In TempleOS you can mix text, images, hyperlinks, and 3d models in the terminal. This is true for the whole system: you could literally have a spinning 3d model of a tank as a comment in a source file. That's right, it took a literal schizophrenic to make an OS with a feature that should have been standard decades ago.

Nobody tries to make actually interesting new operating systems anymore. OS research today is just "let's implement unix with $security_feature", nobody is actually trying to make computers more powerful or fun to use, or design a system based off of a first-principles understanding of what a computer should be.

God I wish I was born in the lisp machine timeline

2 comments

The features you describe belong to the app ecosystem, not to the OS - IMHO the OS is about hardware and drivers, and what kind of graphics is supported by your terminal and source file editor is orthogonal to the OS and could be done in any of the current OS'es; but that would require a rewrite/redesign/reimagining of the whole standard application package which seems a much larger project than "merely" an OS.
"There are more things in heaven and earth, Horatio, than are dreamt of in your philosophy"

An OS facilitates communication between programs running on a computer. Unix lets those programs communicate by sending characters of text to each other. You could just as easily imagine an OS that lets them communicate by sending images, audio/video, 3d models, etc. An OS can be way more than what you think it is. To detox your brain from this unix worldview, spend some time in a VM and play around with amigaOS or opengenera. Those were actual coherent OSes with an actual view of what a computer should be and how it should behave. Unix isn't.

> reimagining of the whole standard application package which seems a much larger project than "merely" an OS.

By OS, I don't mean kernel. I mean the base set of software that lets you interact with your computer and do interesting stuff with it.

The line between app platform and OS is a blurry one. The Amiga OS, for instance, has libraries for specific file types that expose standardized entry points. This way, if you install the library for Photoshop files, all graphics programs that adhere to that protocol will be able to read and write Photoshop PSD files. Microsoft had DDE and, later, OLE, for embedding objects from one program into data from another in a standard way all programs were supposed to share. It was a pain.

This blurry line is present in other environments as well. In the Apple Lisa, installing a program resulted in new templates in the Stationery folder. In Smalltalk, installing a program adds its class definitions to the system as independent entities you could use in your own programs.

Not all operating systems are the children of Unix and VMS.

Smalltalk's components were so tightly interdependent that their integration smoke test was 4+3, because evaluating a simple addition expression exercised like 3/4 of the entire system.
I remember once crashing Squeak by doing

`True := False`

Should crash any vintage ST/80 workstation.

the downside of rich terminal output is that media formats become the system's responsibility. applications can't output media in formats that aren't provided by the system, because then the terminal wouldn't know how to display it and interop with other applications (e.g. piping) wouldn't work either.
You could let a program create an API for manipulating a new type of data and inform the system about it so that other programs could use it. This is more or less what AmigaOS did; you installed a datatype for e.g. a PSD file, then all your programs that worked with images could read PSD files. I think it's a nice idea.