Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!cornell!rochester!rutgers!njin!princeton!phoenix!mbkennel From: mbkennel@phoenix.Princeton.EDU (Matthew B. Kennel) Newsgroups: comp.sys.next Subject: Re: NextStep and NeWS... Keywords: NextStep,NeWS,Postscript Message-ID: <7898@phoenix.Princeton.EDU> Date: 22 Apr 89 00:33:43 GMT References: <1041@nixctc.DE> <8530@polya.Stanford.EDU> <3901@ficc.uu.net> <4779@pt.cs.cmu.edu> <3931@ficc.uu.net> <4792@pt.cs.cmu.edu> Reply-To: mbkennel@phoenix.Princeton.EDU (Matthew B. Kennel) Distribution: na Organization: Princeton University, NJ Lines: 50 In article <4792@pt.cs.cmu.edu> avie@wb1.cs.cmu.edu (Avadis Tevanian) writes: > >Yes, and we agree, we have a layer of NextStep known as the "packages" which >is that part of NextStep that runs entirely in the window server. It does >things like window movement, activation, ... And as it turns out, you >as a user can load your own packages. It doesn't allow to reimplement >the entire UI, but then again, if you do that, you don't have NextStep >anymore. Remember, it makes little sense to reimplement window/menus/... >at the NextStep layer, because you no longer have NextStep. If you want >to implement a different UI and allow for everything to be rewritten you >can certainly do that in DPS. > > >So, can we lay this to rest by saying that NextStep is a specific UI for >which it make no significant sense to reimplement features and that if >you want to have a UI in which any feature was user-implementable you >could write it in DPS? Ok, here's the big question. Is the _user interface as seen by the user_ separate from the window system? Is the "toolkit interface" seen by the programmer separate from the window system? Here's what I mean: I can see that if somebody wanted to do a totally different kind of user interface, this programmer would have to create all the structures &c and write the appropriate code to display them. That's fine, you can't expect the given system to be omniscient enough to do everything for you. But here's the other question: can you replace the code & appearance/superficial features of the user interface, but maintain the same programmer interface so that existing programs will work in this new way without change? For example, taking a Mac analogy, I might want to make some window type with a "close box" that's greeen & polka-dotted that you need to hit control-twaddle-double-bucky-left-mouse to activate, but from the application's point of view, you've still just hit the "close box". How much do the applications programs assume about the particular _implementation_ of the user interface? (not very much I hope) If you have shared libraries, this might be practical. A customizable but still compatible user interface. >-- >Avadis Tevanian, Jr. (Avie) >Chief Operating System Scientist >NeXT, Inc. >avie@cs.cmu.edu or avie@NeXT.com >-- Matt Kennel mbkennel@phoenix.princeton.edu