Thise ideas are in now way "crazy". :-)
Did you ever look into BeOS?
They were using a C++ API exposed by the operating system.
The whole system could be seen as an object oriented environment!
I've got the book "Beos developer guide" lying around here. It's all
described there.
Sadly they did not earn enough money, so the project died in the end.
Hmm I used to have BeOS but never really used it - installed it a couple of
times and played around, but that was about all I did with it.
The way I was thinking of doing it would be to have some way to store each
class in a file, and have a file system based around the class hierarchy,
like so:
/fileformats/multimedia/audio/wave
Wave is audio, which is multimedia, and in this case it's a file format.
This would probably have limitations, but I liked the idea that you could
effectively organise a set of classes in this way.
But basically, when the file system is queried for all *.wav files, it'd
look at all audio files in a directory/folder, and present them as *.wav
files. So, even MP3s would appear in the list.
Then, when you open the file, it would appear to be an instance of
/fileformats/multimedia/audio/wave, and you could deal with it in that
manner.