A Constructive Look at TempleOS (2015)

jllyhill1 pts0 comments

A Constructive Look At TempleOS

codersnotes

Links:

About Me<br>Who is this madman anyway.<br>Fiction<br>Sometimes I write things.<br>Technical Writings<br>In which I complain loudly about computers.<br>Very Sleepy<br>A C++ CPU profiler I helped make.

Follow me:

Subscribe (Fiction)

Subscribe (Technical)

Follow me at @grumpygiant

Recent posts:

Why Build?

Bitcoin

What The Hell Was The Microsoft Network?

Sandcastles

In Search Of The Lost Program

Anger That Burns Without

Something Rotten In The Core

Little Lightmap Tricks

Why Command And Vector Processors Rock

The Danger Of Opinions

The Nor'easter Rises

Disassembling Jak & Daxter

Converging Towards Disneyland

HumanCon

The Pixie Sleeps

Learning Via Bullshit

Beating The Compiler

The Illusion Of Controls

The Challenge Of Making Things

Untonemapping, and other stupid tricks

See the archives above for more.

A Constructive Look At TempleOS<br>June 8th, 2015

TempleOS is somewhat of a legend in the operating system community. Its sole author, Terry A. Davis, has spent the past 12 years attempting to create a new operating from scratch. Terry explains that God has instructed him to construct a temple, a 640x480 covenant of perfection. Unfortunately Terry also suffers from schizophrenia, and has a tendency to appear on various programming forums with a burst of strange, paranoid, and often racist comments. He is frequently banned from most forums.

This combination of TempleOS's amateurish approach and Terry's unfortunate outbursts have resulted in TempleOS being often regarded as something to be mocked, ignored, or forgotten. Many people have done some or all of those things, and it's understandable why.

TempleOS after it has booted up.

I'm reminded of a movie I once saw called Lars And The Real Girl, in which a man buys a RealDoll and treats her as his real girlfriend. Rather than laughing at him, the residents of his town instead band together and treat her as if she were a real person too. When I started watching it, I expected some Will Ferrell-esque comedy where this guy would be played only for laughs. Instead, I found an incredibly compassionate story within. The writer, Nancy Oliver, got the idea after thinking:

"What if we didn't treat our mentally ill people like animals? What if we brought kindness and compassion to the table?"

There are many bad things to be said about TempleOS, many aspects of it that seem poorly constructed or wouldn't work in the "real world". I'm going to ignore them here. It's very easy to be negative, but you will never learn anything new by doing so.

Many might consider TempleOS a waste of time, compared to more fully-featured OSs such as Linux, because it will never have the same success. Plan 9, developed by Bell Labs, was a research OS designed to be a successor to Unix. Despite some big names and big ideas, it was never any kind of commercial success. Was Plan 9 therefore a waste of time? Many would argue not, as some of its ideas have since found their way into other products.

Perhaps we should instead look at TempleOS as a research operating system: what can be accomplished if you're not locked into established thinking, backwards compatibility, and market demands.

What can we learn if we are only willing to listen?

Installation

Installation was incredibly painless. The supplied distribution acts as both a LiveCD and hard-disk installer. Hit 'Y' a couple of times and you've installed it. It installed faster than Ubuntu does.

Booting Windows this morning, I can't help but notice how long it takes. And even when Windows 'appears' to have booted, it doesn't actually become properly usable for perhaps another minute. If you listen, you can spot the point at which usability is declared because Windows plays the startup sound to indicate it.

TempleOS boots off hard disk in 1 second. There is no paging, so it is instantly usable.

Shell

TempleOS has its own programming language, HolyC. The whole operating system is written in it, except for x64 assembly in the lower-level parts. Perhaps unexpectedly, the same language is also used for the shell. That's right, you execute shell commands using a C-like language, and they go directly into the compiler.

Every filename printed in the shell is a hyperlink. You can right-click to get a context menu on each one.

There is no built-in calculator application, because the shell itself is one. Just enter 5+7 on the command line and you'll get the answer. You can even go further than this and use the shell as a REPL to build entire programs in.

You have a menu file which sits in your home directory, and it accessible at any time by hitting Ctrl-M. By editing this file, you can create any kind of launcher you wish. Most files auto-save on exit, but this one does not. This means you can also use it as a popup scratchpad.

TempleOS has system-wide autocomplete. You can hit Ctrl-F1 at any point and get a list of completable words. Not just filenames, but also symbol names. All...

templeos shell look things operating system

Related Articles