Bravo! I wholeheartedly agree that X-Windows didn't get graphics right (and that you're right to refer to it by the name "X-Windows" to annoy the X-Windows Fanatics, who take it upon themselves to correct you every time you call it X-Windows)!

https://medium.com/@donhopkins/the-x-windows-disaster-128d39...

>X Graphics: Square Peg in a Round Hole: Programming X-Windows is like trying to find the square root of pi using roman numerals. - Unknown

As I stated before (which ernst_klim chose to ignore, but apparently strongly agrees with), Eric S Raymond was full of shit when he wrote that "in Unix everything is a file" in his terrible book "The Art of UNIX Programming", just as he was also full of shit when he wrote "given enough eyeballs, all bugs are shallow" and falsely attributed it as Linus's Law, and ESR was full of racist hatred and bullshit when he more recently wrote "The average IQ of the Haitian population is 67... Haiti is, quite literally, a country full of violent idiots" (although ernst_klim may not agree with my opinion about that ESR quote).

http://esr.ibiblio.org/?p=7011#comment-1685142

The extensible linguistic approach that NeWS took towards a graphics API is also a great approach to a file system API, which I summarized in the recent discussion of "The everything-is-a-file principle - Linus Torvalds":

https://news.ycombinator.com/item?id=17532320

>I prefer the "everything is a computer" API. (Which happens to be Alan Kay's model of object oriented programming as message passing.)

https://softwareengineering.stackexchange.com/questions/4659...

>"I thought of objects being like biological cells and/or individual computers on a network, only able to communicate with messages (so messaging came at the very beginning -- it took a while to see how to do messaging in a programming language efficiently enough to be useful)." -Alan Kay

>NeFS -- aka NFS 3.0 -- used a PostScript interpreter as the file system API.

https://news.ycombinator.com/item?id=17061967

>Even 16 or so years earlier in 1990, Sun played with the idea of putting a PostScript interpreter in the SunOS kernel.

>Like NeWS was the Network extensible Window System, so NeFS was the Network extensible File System, or NFS 3.0.

>It was actually a great idea, just a wee bit before its time, and very poorly named and positioned!

>For example: If you want to make a copy of a file on the server, you can send a PostScript program that runs in the kernel and copies the file locally on the server in the kernel with ZERO context switches, instead of sending it over the net to the client, then back from the client to the server. Even if you rsh'ed the user command "cp" on the server, it would still incur context switching, but if your copy loop was running in the kernel then it didn't need to switch in and out and in and out for every block it copied.

https://news.ycombinator.com/item?id=17482780

>I disagree that history proves them wrong about Telescript. They just had the client/server relationship backwards (and asymmetrical).

>Andy Hertzfeld: "You didn't really need to do that. Just the remote procedure paradigm was good enough. Which is really what the web is based on. You don't inject code into the web to do you work for you and come back to you. You just ask a server with an http request."

>It doesn't take Yakov Smirnoff to observe that now the web injects code into you.

>The remote procedure paradigm isn't good enough. That just leads to the X-Windows Disaster.