30 Years of Frontier

Dave Winer:

Little-known fact: I designed and developed a programming language.

My goal was to create an environment I would work in for the rest of my career. I just realized it’s exactly 30 years later, and I’m still using it.

30 fucking years. I think I earned the right to say it that way.

Now that I also work in JavaScript, it amazes me how easy the simple things are in Frontier, compared to JS, esp when you have to tack on a database. You really have to work at seeing what’s going on. In Frontier, you just click around expanding things. You can even look at the runtime stack that way.

If you never used Frontier, it’s hard to explain what made it so special. My very favorite thing about Frontier is the “object database”. It wasn’t like using a database in the SQL sense. It was just persistent storage. You didn’t have to deal with the file system at all. You just wrote to, say, scratchpad.foo or examples.bar or any other unique identifier and whatever you wrote would be there when you went to read it. And, even better, there was a visual interface for exploring everything in the object database. You could see it and explore it, because in addition to being a language, Frontier was also a real Mac app. You could even customize the app’s menu items just by editing the system.misc.menubar table in the object database. It’s a wonderfully self-contained design. Re-reading the documentation makes me wonder why there’s nothing like Frontier’s object database in other scripting languages.

Wednesday, 25 April 2018