Here's the whole thread from six days ago, started when I shared the "Folders" esolanguage article and hn discussion, which I think is interesting for students and language hackers:
On 16 Oct 2026, Don Hopkins wrote to Owen Densmore, David Rosenthal, and Alan Kay:
Somebody took your filesystem-as-objects patent idea to the logical extreme!
https://danieltemkin.com/esolangs/folders
https://news.ycombinator.com/item?id=50114342
-Don
On 16 Oct 2026, Alan Kay wrote:
There's a patent for this idea?
I fear there is some really old prior art for several parts of it.
Best cheers
Alan
On 16 Oct 2026, Don Hopkins wrote:
Yes, it's Sun's US 5,187,786: "Method and apparatus for implementing a class hierarchy of objects in a hierarchical file system." Owen and David filed it in 1991, it was granted in 1993, and it expired in 2011, so anyone can use it now, including people writing esolangs about folders.
https://patents.google.com/patent/US5187786A/en
You're right about the prior art, and the idea came straight from your side of the family tree. Tom Stambaugh helped Owen work out how to adapt Smalltalk patterns to it, scribbling on napkins at a poolside table at the old Hyatt Palo Alto. In the patent, directories are classes and instances, PATH files encode the inheritance chain, and you send a message from the shell with something like "SEND aF001 methodA args".
It's the same trick Owen used for the NeWS object system in PostScript. Classes were dictionaries, and sending a message pushed the object's class chain onto the dictionary stack, so ordinary PostScript name lookup did the method lookup for free. NeWS 1.0 had single inheritance through a parent dictionary. TNT added ordered parent lists and multiple inheritance. The patent does the same thing with the shell path playing the dictionary stack: walk the directories, and the first match wins.
Owen's 1986 Monterey paper on object-oriented PostScript:
https://donhopkins.com/home/monterey86.pdf
The NeWS Book, chapter 6:
https://donhopkins.com/home/The_NeWS_Book_1989.pdf
I've been running with it in MOOLLM, which leans more toward Self than Smalltalk. A directory is an object, its files are slots, and a "parents:" list delegates to other directories, in order, first match wins. It's prototypes rather than classes, and the LLM does the message dispatch by reading the directory. The filesystem is the object graph, so it's inspectable, diffable, and versioned in git for free:
https://github.com/SimHacker/moollm/blob/main/kernel/DIRECTO...
https://github.com/SimHacker/moollm/blob/main/skills/file-sy...
The lineage from Smalltalk and Self through NeWS, TNT, the patent, HyperLook, and The Sims to MOOLLM is written up here:
https://github.com/SimHacker/moollm/blob/main/designs/object...
https://github.com/SimHacker/moollm/blob/main/designs/postsc...
Owen and David can correct my history, since they're on the thread.
-Don
On 16 Oct 2026, Alan Kay wrote:
Hi Don
I should have said "prior art before Smalltalk" ...
Best cheers
Alan
On 16 Oct 2026, Don Hopkins wrote:
In a way, the patent is just pure prior art, plus perspective, which is worth a certain number of IQ points I've been told. ;)
Which pre-Smalltalk ancestors were you thinking of? Sketchpad's masters and instances, Simula's classes, and Multics search rules walking a hierarchy of directories all seem like pieces of it.
-Don
On 16 Oct 2026, Alan Kay wrote:
Hi Don
I have been keeping to "80" IQ points in the saying (thus avoiding inflation). However very few people have noticed there is no sign bit in the aphorism, and that it works just as well for "poor perspectives being worth negative 80 IQ points" (and I think we could claim inflation of stupidity in many bad directions these days ...).
I don't like to claim priority for any ideas (including my own). Bob Barton liked a great saying of Goethe's:
"We should all share in the excitement of Discovery without vain attempts to claim Priority"
and I imprinted on that in grad school.
So, without claiming priority, I would point to Engelbart's NLS for unifying the structure of the file system with the basic hierarchical structuring of their content (and this included how code was represented, written, and read). A few years later I used a different kind of unification in the FLEX machine that Ed Cheadle and I did in the mid-60s to have "every large thing" be an instantiable process, including things that were more "file-like".
This is just FYI, partly because of the above Goethe quote, partly because the FLEX project was done within the aerospace conglomerate LTV, and was proprietary. My thesis advisor Dave Evans had to go to considerable work to get permission for me to do my degree write ups on a tiny subset. The later Smalltalk was a "cold restart" on these ideas (and LTG was not a problem by then).
And -- for Smalltalk -- the notion to make "everything large and small" an object was a quick way to get going on the comparatively speedy Alto, and Dan Ingalls (and his Smalltalk group) were able to do most of the SW engineering to make Smalltalk act semantically as though everything was an object.
Best cheers
Alan