From mboxrd@z Thu Jan 1 00:00:00 1970 MIME-Version: 1.0 In-Reply-To: References: <201204181805.q3II5VO2025497@freefriends.org> <6078AC91-47C1-4EE4-A48B-3B6A9A02FDF1@corpus-callosum.com> Date: Thu, 19 Apr 2012 11:32:03 +0100 Message-ID: From: Charles Forsyth To: Fans of the OS Plan 9 from Bell Labs <9fans@9fans.net> Content-Type: text/plain; charset=UTF-8 Subject: Re: [9fans] nix at lsub Topicbox-Message-UUID: 786289f2-ead7-11e9-9d60-3106f5b1d025 I wasn't too worried about getting a file system interface to it. I'd supposed that would be tedious (from the size of the language) but straightforward, similar in principle to draw(2). Draw's programming interface can, however, present Images, Screens, Points, Rectangles, Screens, Fonts, and so on as values that can be created and manipulated like any other. Obviously there's still an underlying state in the image currently drawn in an Image, or on a Display. By contrast, OpenGL has things like this: "None of the matrix manipulation commands have an explicit parameter to control which matrix they affect. Instead, OpenGL maintains a current matrix mode that determines which matrix type the previously mentioned matrix manipulation commands actually affects" and "each matrix type has its own a stack of matrices". (That's followed in a document I'm looking at by all the ways you can get into trouble with this, but how much faster it all is!) And, that state is program global. Still, that's what there is!