From chharris@u.washington.edu Fri Jun 16 13:17:13 1995 Status: RO X-Status: Return-Path: <tunes-request@ens.fr> Received: from mx4.u.washington.edu by saul5.u.washington.edu (5.65+UW95.05/UW-NDC Revision: 2.33 ) id AA12730; Fri, 16 Jun 95 13:17:11 -0700 Received: from nef.ens.fr by mx4.u.washington.edu (5.65+UW95.05/UW-NDC Revision: 2.31 ) id AA01704; Fri, 16 Jun 95 13:17:04 -0700 Received: by nef.ens.fr (5.65c8/ULM-1.0) Id AA27495 ; Fri, 16 Jun 1995 22:14:21 +0200 Received: from saul3.u.washington.edu by nef.ens.fr (5.65c8/ULM-1.0) Id AA27480 ; Fri, 16 Jun 1995 22:14:02 +0200 Received-Date: Fri, 16 Jun 1995 22:14:02 +0200 Received: by saul3.u.washington.edu (5.65+UW95.05/UW-NDC Revision: 2.33 ) id AA09941; Fri, 16 Jun 95 11:28:07 -0700 X-Sender: chharris@saul3.u.washington.edu Date: Fri, 16 Jun 1995 11:28:07 -0700 (PDT) From: "'Chris Harris' B. Harris" <chharris@u.washington.edu> To: tunes@ens.fr Subject: INT: Worlds and Generic Services Message-Id: <Pine.OSF.3.91j.950616111421.8588A-100000@saul3.u.washington.edu> Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Errors-To: listman@ens.fr X-Sequence: 585 Hello TUNESers! Been pondering lately how to set up a UI framework, as well as how TUNES will provide generic services, to the extend that Fare describes in his CD Database example. (If you haven't read that, perhaps you should -- I wish my computer could do that! =) So here I am, to present a few thoughts and solicit some feedback (as usual).... First, about the UI framework: been thinking about how we could create a flexible, expandable environment with minimal abstraction, maximum coolness. I haven't come up with anything extremely concrete, but I have made the following little sketch. If it sounds like this is on the right track, maybe I could expand this into a "paper". If not, I'd love to hear rash modifications or alternate proposals! Anyway, here goes... ***** Sketch ------ -User interaction takes place through "worlds" -Instead of a login shell, user "logs in" to a world. -Worlds might be interacted with via text, 2D/3D pictures, sound, etc. -- and different combinations of these (which of these is used depends on how the world is set up. -Each world has some subset of the universe of objects inside it -Objects may be added to a world by a "realize" or some other command, and then may be later removed/unrealized. -"Realized" objects become part of the world, and abide by the world's "physics". (ie realizing a chunk of text might, in a 2D windowing system world, bring up something not too distant from today's word processors) -Objects are interfaced to the world through modules/sub-objects, which specify the object (visually, etc.) in terms of other objects in the world or low-level graphics/audio/etc primitives. -Normally, one such module exists for each world an object can interface with. -But there are exceptions -- world may provide for "generic" object support, where users can interact with an object just by setting attributes, etc.. (For example, in a world that doesn't support input siders (used for volume controls, etc.), a user might still be able to set some object's field to a value between 1 and 100 to control the slider's value.) -Worlds can enclose other worlds -a world can even enclose a copy of itself -to achieve this, worlds must be careful to access drivers (that can be emulated) and not the hardware directly. Sure, some worlds could access the hardware directly, but this is not reccomended, as it makes that world impossible to run within another world. -(?)Worlds help provide security: only objects in current world can be accessed (by the user anyway). -(?)Worlds can help provide context/speed: if a world is setup so that no objects outside the world can be accessed, the search space (hence time) is lowered drastically? (Is this REALLY what we want?) Issues ------ -Where are objects when not in a world? -Can an object reside in multiple worlds at once? -yes -Do worlds encourage abstraction? -Support yes, but not encourage. Abstractions can be created (as sub-worlds, perhaps) as needed, but part of the worlds system's advantage is how easy it is (?) to NOT provide abstraction. Say I have a text object that I want the user to edit. I can simply plot this object in the user's world, and it'll figure out what to do with itself. That way, I don't have to support it with any of my time/code. (Not sure how that relates to abstraction, but oh well...) -Multiuser worlds? -Sure, why not? Let as many folks as need log in to a given world, and interact with the same stuff! (Or would this result in pointless control fights? This needs to be refined...) -Communication between worlds -done only with objects, or do we allow sort of sort of "portals/warps" to other worlds? Cool thoughts ------------- -Text objects created as sub-worlds, with their own "laws" appropriate to text, etc.. ***** About generic services: seems to me that due to the lack of sufficiently advanced/cheap AI items, requests such as "provide me the best database module availible" (going back to the CD Database) are going to have to be translated into some sort of structure request, and then the appropriate module found simply by pattern matching with similar structures attatched to objects. Something like this: struct objectRequest { ulong object_type; // 5, for example, might be our standard database // ID # char *attributes; // special needed attributes needed by this database // module to satisfy our needs object }; Sure, it's ugly, but how else can we do it without some big ol' AI thing that hasn't been invented, or is out of our reach if it is? Harder than this, I think, in Fare's example, is the part where the system basically goes to ask the database object how it works, and the module replies with the appropriate information. Pardon my French (hehe...), but how the hell are we supposed to communicate that appropriate info for every possible case? Any thoughts on this? Oh, and I think TUNES should have one standard installation package that does more than make, imake and all those others put together. The amount of effort needed to install some UNIX apps is just silly. I know it can't be as simple as Mac/Win, where you just plop the app there and it works. (And binaries won't work anyhow, if we want to support 80 zillion platforms someday.... =) But, assuming we trust the source code, couldn't things be more standardized, and hence more easily automated? Feedback is welcomed/begged, as usual. -Chris -------------------------------------------------------------------------- "Be careful lest in casting out your devil you cast out the best thing that's in you." --Nietchie %% Me = Chris Harris (chharris@u.washington.edu) Check out my web page: http://weber.u.washington.edu/chharris/ From tunes-request@ens.fr Sun Jun 18 18:12:31 1995 Return-Path: <tunes-request@ens.fr> Received: from mx4.u.washington.edu by saul5.u.washington.edu (5.65+UW95.05/UW-NDC Revision: 2.33 ) id AA14368; Sun, 18 Jun 95 18:12:30 -0700 Received: from nef.ens.fr by mx4.u.washington.edu (5.65+UW95.05/UW-NDC Revision: 2.31 ) id AA21878; Sun, 18 Jun 95 18:12:28 -0700 Received: by nef.ens.fr (5.65c8/ULM-1.0) Id AA06732 ; Mon, 19 Jun 1995 02:16:53 +0200 Received: from fpsp.fapesp.br by nef.ens.fr (5.65c8/ULM-1.0) Id AA06721 ; Mon, 19 Jun 1995 02:16:44 +0200 Received-Date: Mon, 19 Jun 1995 02:16:44 +0200 Received: from ofelia (lsi.poli.usp.br) by fpsp.fapesp.br with PMDF#10108; Sun, 18 Jun 1995 21:10 BSC (-0300 C) Received: from sofia.usp.br (sofia.lsi.usp.br [143.107.3.234]) by ofelia (8.6.12/8.6.9) with SMTP id VAA25435 for <tunes%ens.fr@fpsp.fapesp.br>; Sun, 18 Jun 1995 21:02:53 -0300 Date: Sun, 18 Jun 1995 21:02:53 -0300 From: "Jecel Mattos de Assumpcao Jr." <jecel@lsi.usp.br> Subject: Re: INT: Worlds and Generic Services To: tunes@ens.fr Message-Id: <199506190002.VAA25435@ofelia> Errors-To: listman@ens.fr X-Sequence: 592 Status: RO X-Status: "'Chris Harris' B. Harris" <chharris@u.washington.edu> wrote: > Sketch > ------ > > -User interaction takes place through "worlds" > -Instead of a login shell, user "logs in" to a world. Good start. > -Worlds might be interacted with via text, 2D/3D pictures, sound, etc. -- > and different combinations of these (which of these is used depends on > how the world is set up. And the user should be able to choose which interaction method is best - 3D worlds are neat but are not very good to a blind person. Of course, some worlds might not make sense with some interaction methods - who wants a text based DOOM? > -Each world has some subset of the universe of objects inside it > -Objects may be added to a world by a "realize" or some other command, and > then may be later removed/unrealized. A "fetch" function might be the best way to introduce objects into a world. > -"Realized" objects become part of the world, and abide by the world's > "physics". (ie realizing a chunk of text might, in a 2D windowing system > world, bring up something not too distant from today's word processors) > -Objects are interfaced to the world through modules/sub-objects, which > specify the object (visually, etc.) in terms of other objects in the world or > low-level graphics/audio/etc primitives. Ok, sort of like the "window manager" in X. > -Normally, one such module exists for each world an object can interface > with. > -But there are exceptions -- world may provide for "generic" > object support, where users can interact with an object just by setting > attributes, etc.. (For example, in a world that doesn't support input > siders (used for volume controls, etc.), a user might still be able to > set some object's field to a value between 1 and 100 to control the > slider's value.) Yes - you might need to "move" from just using the objects to programming them, for example. Multiple levels of abstraction is a powerful idea. Self 4.0 is comming out very soon - I wish there was some way of you seeing what they have done there! > -Worlds can enclose other worlds > -a world can even enclose a copy of itself > -to achieve this, worlds must be careful to access drivers (that can be > emulated) and not the hardware directly. Sure, some worlds could > access the hardware directly, but this is not reccomended, as it makes > that world impossible to run within another world. You lost me here - what does "enclose" mean and what does it have to do with drivers and such low level stuff? > -(?)Worlds help provide security: only objects in current world can be > accessed (by the user anyway). > -(?)Worlds can help provide context/speed: if a world is setup so that no > objects outside the world can be accessed, the search space (hence time) > is lowered drastically? (Is this REALLY what we want?) This isn't such a good idea - the objects in the world must be just the tip of the iceberg - you should also be able to access objects that are referred to by these objects and so on. I would make the security issue orthogonal to the worlds idea, or multiuser worlds ( see below ) won't make sense. > Issues > ------ > > -Where are objects when not in a world? Where are the files that are not in the current directory? As long as you admit a number of worlds, you can always imagine that the objects are in one of them ( not the current one ). You might not be able to "navigate" to where the objects are, but you could "fetch" them to where you are. > -Can an object reside in multiple worlds at once? > -yes I also prefer to answer yes, but the Self folks have powerful arguments against that: it makes objects much less concrete. They believe an object must have a unique on-screen presence. On the other hand, any object can be "seen" in multiple places in the object graph that is part of the implementation, and I think this idea must be reflected in the UI. It could be something like "aliases" in MacOS or "shadows" in OS/2 ( see the confusion they can cause to understand what the Self people are talking about ... ). > -Do worlds encourage abstraction? > -Support yes, but not encourage. Abstractions can be created (as sub-worlds, > perhaps) as needed, but part of the worlds system's advantage is how easy > it is (?) to NOT provide abstraction. Say I have a text object that I want > the user to edit. I can simply plot this object in the user's world, and > it'll figure out what to do with itself. That way, I don't have to support > it with any of my time/code. (Not sure how that relates to abstraction, but > oh well...) Er.. I think we want concreteness, not abstraction. Abstraction is a bad thing in a UI. The great thing about Unix was how it abstracted disks files, serial IO, etc into a single idea - but we already get enough of that with objects and polymorphism without having to add layers to the UI. > -Multiuser worlds? > -Sure, why not? Let as many folks as need log in to a given world, and > interact with the same stuff! (Or would this result in pointless control > fights? This needs to be refined...) Self 4.0 already allows many users to share a window - it is very neat! There is a great potential here ( why do you think IBM spent 3.3 billion dollars on Lotus - to get a little of thie functionality with Notes ). > -Communication between worlds > -done only with objects, or do we allow sort of sort of "portals/warps" to > other worlds? There are two issues - communication between worlds and the user navigating between the worlds. I think the first can be totally invisible and the second done with "portals". > ***** > > About generic services: seems to me that due to the lack of sufficiently > advanced/cheap AI items, requests such as "provide me the best database > module availible" (going back to the CD Database) are going to have to be > translated into some sort of structure request, and then the appropriate > module found simply by pattern matching with similar structures attatched > to objects. Something like this: > > struct objectRequest { > ulong object_type; // 5, for example, might be our standard database > // ID # > char *attributes; // special needed attributes needed by this database > // module to satisfy our needs > object }; > > Sure, it's ugly, but how else can we do it without some big ol' AI thing > that hasn't been invented, or is out of our reach if it is? Structured Query Language ( SQL ) can already do better than that. I think part of the answer might be Fare's annotations - just sweep through the objects looking at what they tell you about themselves. > Harder than this, I think, in Fare's example, is the part where the > system basically goes to ask the database object how it works, and the > module replies with the appropriate information. Pardon my French > (hehe...), but how the hell are we supposed to communicate that > appropriate info for every possible case? Any thoughts on this? This is where reflection comes in - the ability of the system to "look inside itself" and work with that. This is already present in Smalltalk, for example: I can ask for the "implementors of #search:" and get a browser with all of the classes that implement this method. We are talking about 70s technology here. > Oh, and I think TUNES should have one standard installation package that > does more than make, imake and all those others put together. The amount > of effort needed to install some UNIX apps is just silly. I know it > can't be as simple as Mac/Win, where you just plop the app there and it > works. (And binaries won't work anyhow, if we want to support 80 zillion > platforms someday.... =) But, assuming we trust the source code, > couldn't things be more standardized, and hence more easily automated? Binaries *will* work if they are virtual binaries. No need to install objects - just a method of communicating them ( via internet, floppies, CD-ROM, etc.. ) from one system to another. It is exactly the same thing as copying an object from one world to another within a single system. -- Jecel From moose@Sit-Hyps Mon Jun 19 05:43:46 1995 Return-Path: <moose@Sit-Hyps> Received: from mx4.u.washington.edu by saul5.u.washington.edu (5.65+UW95.05/UW-NDC Revision: 2.33 ) id AA11318; Mon, 19 Jun 95 05:43:45 -0700 Received: from shiva.jussieu.fr by mx4.u.washington.edu (5.65+UW95.05/UW-NDC Revision: 2.31 ) id AA21119; Mon, 19 Jun 95 05:43:32 -0700 Received: from Sit-Hyps (ligne19.ext.jussieu.fr [134.157.81.169]) by shiva.jussieu.fr (8.6.10/jtpda-5.1) with ESMTP id OAA18075 ; Mon, 19 Jun 1995 14:42:54 +0200 Received: (from moose@localhost) by Sit-Hyps (8.6.12/8.6.9) id GAA00986; Mon, 19 Jun 1995 06:50:22 +0200 From: The MOOSE project <moose@Sit-Hyps> Reply-To: <rideau@ens.fr> Message-Id: <199506190450.GAA00986@Sit-Hyps> Subject: Re: INT: Worlds and Generic Services To: chharris@u.washington.edu ('Chris Harris' B. Harris) Date: Mon, 19 Jun 1995 06:50:21 +0200 (MET DST) Cc: tunes@ens.fr In-Reply-To: <Pine.OSF.3.91j.950616111421.8588A-100000@saul3.u.washington.edu> from "'Chris Harris' B. Harris" at Jun 16, 95 11:28:07 am X-Mailer: ELM [version 2.4 PL23] Content-Type: text Content-Length: 6911 Status: RO X-Status: [Just BTW; anyone has a HTML version of the GNU GPL v2, so I put a copyright on the pages ? And what about ``copyright (c) 1995 Francois-Rene "Fare" Rideau and the members of the TUNES project'' ?] > -User interaction takes place through "worlds" Interaction in general; not only "user". > -Instead of a login shell, user "logs in" to a world. Yes. "Opens a view". > -Worlds might be interacted with via text, 2D/3D pictures, sound, etc. -- > and different combinations of these (which of these is used depends on > how the world is set up. Well, a non-limitative list like "among the interaction media are text, ....", etc, would be better, I think. > -Each world has some subset of the universe of objects inside it I'd rather say that worlds are a *context* in the universe of objects; that they are somehow universes themselves in that meta-universe. > -Objects may be added to a world by a "realize" or some other command, > then may be later removed/unrealized. I think that is what we called migration, according to the terminology of the Sony CSL. > -"Realized" objects become part of the world, and abide by the world's > "physics". (ie realizing a chunk of text might, > in a 2D windowing system > world, bring up something not too distant from today's word processors) I only half-agree with it: for an object to be "the same", it must conserve some of its semantics, which must thus be independent of the world it is being viewed from. Now, each world can *enrich* the semantics of an object. But multiple worlds mustn't be able to enrich it in unconsistent ways... > -Worlds can enclose other worlds Sure ! > -a world can even enclose a copy of itself That's recursivity ! It's fine, but must follow some consistency conditions (i.e. so that the recursive definition converges...) > -Where are objects when not in a world? They do not exist anymore. But of course there are some lowly active world for storage; that is, world where objects receive no message, but are ready to be migrated again. E.g. a disk... > -Can an object reside in multiple worlds at once? > -yes Yes, and this is a most important feature of TUNES, that we shall not withdraw: objects can live in several, different contexts; people can have various independent point of views on objects. > -Do worlds encourage abstraction? Ahem. What do you mean exactly by "abstraction" ? > -Multiuser worlds? > -Sure, why not? Let as many folks as need log in to a given world, and > interact with the same stuff! (Or would this result in pointless control > fights? This needs to be refined...) Again, to the system, a "user" is just some context/world. Objects being shared by users is thus just a very particular case of objects being in multiple worlds at once. Actually, having the particular case without the general one (which is what is being done in current design) is just lame, unefficient, and the proof that existing system designers understand nothing of what a system is. > -Communication between worlds > -done only with objects, or do we allow sort of sort of "portals/warps" to > other worlds? "Worlds" being objects, communication between worlds is done by their meta-objects which "magically" link objects without the objects knowing, their seeing only legal operations being done in some "magic" order, from some "magical" input. > About generic services: seems to me that due to the lack of sufficiently > advanced/cheap AI items, requests such as "provide me the best database > module availible" (going back to the CD Database) are going to have to be > translated into some sort of structure request, and then the appropriate > module found simply by pattern matching with similar structures attatched > to objects. >[...] > Harder than this, I think, in Fare's example, is the part where the > system basically goes to ask the database object how it works, and the > module replies with the appropriate information. Pardon my French > (hehe...), but how the hell are we supposed to communicate that > appropriate info for every possible case? Any thoughts on this? Both are two sides of the same problem: define specifications of objects, and use these specifications. Combining objects requires a formal or informal "proof" of the specifications, and finding an object is just proving an existential specification "there exists an object such that...". We won't give info for "every possible case", which is impossible, because we want maximal power, and thus have infinitely rich systems so "every possible case" will not fit any finite memory. Instead, there will be some human-controlled inference system. Interesting proofs will be cached in databases; particularly, packages come with standard proofs and ad-hoc provers so they can be used easily. If no proof is available, standard programmable tools are provided so the user can try find a new proof. As TUNES evolves, more or less complex AI programs will appear and relieve the human from doing those proofs. Meanwhile, superusers have the "admit it" tool, too, so they need not be good at logic to have programs run. > Oh, and I think TUNES should have one standard installation package that > does more than make, imake and all those others put together. The amount > of effort needed to install some UNIX apps is just silly. I know it > can't be as simple as Mac/Win, where you just plop the app there and it > works. (And binaries won't work anyhow, if we want to support 80 zillion > platforms someday.... =) But, assuming we trust the source code, > couldn't things be more standardized, and hence more easily automated? Sure, sure. We shall provide the most simple possible installation, with automated mutual recognition of software packages: software being uniquely named, and coming with formal and unformal specifications, this is a very doable task; some AI could later allow the system to run with less explicit information. Now, if we control the software, we do not control the hardware, and thus we cannot be sure to install fully automatically and recognize all the hardware at the same time. To conclude, software installation will be automatical and programmable (i.e. under full user control). Default installation will be secure, but will propose the user to try less secure hardware modules, and choose the options for modules in general. -- , , _ v ~ ^ -- -- Fare -- rideau@clipper.ens.fr -- Francois-Rene Rideau -- +)ang-Vu Ban -- -- ' / . -- Join the TUNES project for a computing system based on computing freedom ! TUNES is a Useful, Not Expedient System WWW page at URL: "http://www.eleves.ens.fr:8080/home/rideau/Tunes/" From rainer@physik3.gwdg.de Mon Jun 19 11:02:22 1995 Return-Path: <rainer@physik3.gwdg.de> Received: from mx4.u.washington.edu by saul5.u.washington.edu (5.65+UW95.05/UW-NDC Revision: 2.33 ) id AA17776; Mon, 19 Jun 95 11:02:17 -0700 Received: from swing.physik3.gwdg.de by mx4.u.washington.edu (5.65+UW95.05/UW-NDC Revision: 2.31 ) id AA28271; Mon, 19 Jun 95 11:02:14 -0700 Received: from zaphod.physik3.gwdg.de by swing.physik3.gwdg.de (4.1/SMI-4.1+DPI) id AA05934; Mon, 19 Jun 95 20:00:50 +0200 Received: by zaphod.physik3.gwdg.de (5.x/SMI-SVR4+DPI) id AA21743; Mon, 19 Jun 1995 20:00:48 +0200 Date: Mon, 19 Jun 1995 20:00:48 +0200 From: rainer@physik3.gwdg.de (Rainer Blome) Message-Id: <9506191800.AA21743@zaphod.physik3.gwdg.de> To: chharris@u.washington.edu Cc: tunes@ens.fr In-Reply-To: <Pine.OSF.3.91j.950616111421.8588A-100000@saul3.u.washington.edu> (chharris@u.washington.edu) Subject: Re: INT: Worlds and Generic Services Status: RO X-Status: Chris wrote: > -Where are objects when not in a world? Objects should always be in a world (a context), even if it's the hardware (it's a hard world ;-). > -Multiuser worlds ... would this result in pointless control fights? We can use the physical properties to break any ties - if two users want to manipulate an object, some force might give feedback to the users indicating to them that they are not the only one trying to use an object. Don't take me too literal here - no need for force-feedback input devices (they do exist), just any kind of feedback will do. > -Text objects created as sub-worlds, with their own "laws" appropriate to text, > etc.. Of course - that's the multiple syntax/ a parser is an object thing. Just about ANY object may be viewed as providing a context to its members (methods) and childs, which is reminiscent of the worlds you talk about. > ... standard installation package ... I know it > can't be as simple as ... just plop the app there and it works. > [...] > couldn't things be more standardized, and hence more easily automated? It can't be as simple? It will be! Well, maybe it doesn't work right away, but it will try to figure out why and fix the problem on its own. For example, when the Hot Java browser tries to make an applet in some document work and a class is misssing from the browser's library, it asks the server that supplied the document to provide the class. Likewise, when you fetch some program from somewhere, the program must rember where it came from (reflectivity again) and be able to "ask mom" for help (some module) when something is missing. > -Communication between worlds > -done only with objects, or do we allow sort of sort of "portals/warps" to > other worlds? As I wrote in my thoughts on UIs: "Use windows that fill the whole screen (parent-window) for rooms. Select them by icon or by shuffling them up or down." In other words: a portal (maybe an icon) is nothing else than the representation of another world ("room") in the current one. Entering it would be equivalent to first looking in it (opening it/ looking inside it/ changing its representation from icon to window) and then making it the "default view" by zooming it to full-screen size. I was a little disappointed about the amount of feedback (none) to that little article of mine, you could at least have said "boahring ... *snooze*" or "who cares?". For those who care, the URL is: "http://www.physik3.gwdg.de/~rainer/cs/ui.html" Still, as I mentioned months before, the distiction between the Interfaces project and the rest of the Tunes project is unclear to me. I propose we define the domain of the Interfaces project as: "The issues that pertain to the (virtually) perceived ("physical") properties of the objects that the user perceives when dealing with the system." Enough on this for now... Rainer From chharris@u.washington.edu Mon Jun 19 13:18:11 1995 Return-Path: <tunes-request@ens.fr> Received: from mx5.u.washington.edu by saul5.u.washington.edu (5.65+UW95.05/UW-NDC Revision: 2.33 ) id AA05895; Mon, 19 Jun 95 13:18:09 -0700 Received: from nef.ens.fr by mx5.u.washington.edu (5.65+UW95.05/UW-NDC Revision: 2.31 ) id AA10936; Mon, 19 Jun 95 13:18:02 -0700 Received: by nef.ens.fr (5.65c8/ULM-1.0) Id AA18393 ; Mon, 19 Jun 1995 22:03:06 +0200 Received: from cri.ens-lyon.fr by nef.ens.fr (5.65c8/ULM-1.0) Id AA18380 ; Mon, 19 Jun 1995 22:03:04 +0200 Received-Date: Mon, 19 Jun 1995 22:03:04 +0200 Received: from ens.ens-lyon.fr by cri.ens-lyon.fr (5.x/SMI-SVR4) id AA10916; Mon, 19 Jun 1995 22:03:03 +0200 Received: from monplaisir.ens-lyon.fr by ens.ens-lyon.fr (5.x/SMI-SVR4) id AA01417; Mon, 19 Jun 1995 22:04:33 +0200 Received: by monplaisir.ens-lyon.fr (5.x/SMI-SVR4) id AA17293; Mon, 19 Jun 1995 22:03:01 +0200 Date: Mon, 19 Jun 1995 22:03:01 +0200 From: Codrin.Nichitiu@ens.ens-lyon.fr (Codrin Nichitiu) Message-Id: <9506192003.AA17293@monplaisir.ens-lyon.fr> To: tunes@ens.fr Subject: Re: INT: Worlds and Generic Services X-Sun-Charset: US-ASCII Errors-To: listman@ens.fr X-Sequence: 603 Status: RO X-Status: Hello everybody ! > I was a little disappointed about the amount of feedback (none) to that > little article of mine, you could at least have said "boahring > ... *snooze*" or "who cares?". For those who care, the URL is: > "http://www.physik3.gwdg.de/~rainer/cs/ui.html" > I care but the WWW doesn't work. Is there any net problem ? I tried to open your URL. Both Mosaic and Netscape refused. What could I do to fix that ? Actually I am somehow partly in charge for TUNES HLL, but as I was quite overwhelmed with my exams and also with boring and routine stuff, I was only able to think alone and to watch the discussions. In a few days I'll come up with a structured _micro_project idea. Of course everybody on the list is welcome to Lyon, the same way Fare welcomed you in Paris. I'll be away only three weeks of July (2nd to 4th). Soon, Codrin From tunes-request@ens.fr Mon Jun 19 13:55:41 1995 Return-Path: <tunes-request@ens.fr> Received: from mx5.u.washington.edu by saul5.u.washington.edu (5.65+UW95.05/UW-NDC Revision: 2.33 ) id AA11159; Mon, 19 Jun 95 13:55:38 -0700 Received: from nef.ens.fr by mx5.u.washington.edu (5.65+UW95.05/UW-NDC Revision: 2.31 ) id AA15938; Mon, 19 Jun 95 13:55:32 -0700 Received: by nef.ens.fr (5.65c8/ULM-1.0) Id AA19999 ; Mon, 19 Jun 1995 22:53:29 +0200 Received: from swing.physik3.gwdg.de by nef.ens.fr (5.65c8/ULM-1.0) Id AA19988 ; Mon, 19 Jun 1995 22:53:24 +0200 Received-Date: Mon, 19 Jun 1995 22:53:24 +0200 Received: from zaphod.physik3.gwdg.de by swing.physik3.gwdg.de (4.1/SMI-4.1+DPI) id AA05998; Mon, 19 Jun 95 22:44:10 +0200 Received: by zaphod.physik3.gwdg.de (5.x/SMI-SVR4+DPI) id AA22147; Mon, 19 Jun 1995 22:44:08 +0200 Date: Mon, 19 Jun 1995 22:44:08 +0200 From: rainer@physik3.gwdg.de (Rainer Blome) Message-Id: <9506192044.AA22147@zaphod.physik3.gwdg.de> To: tunes@ens.fr In-Reply-To: <9506192003.AA17293@monplaisir.ens-lyon.fr> (Codrin.Nichitiu@ens.ens-lyon.fr) Subject: Re: INT: Worlds and Generic Services Errors-To: listman@ens.fr X-Sequence: 604 Status: RO X-Status: although our www-server has pretty heavily loaded, i don't know of any net problems. anyway, i sent the file directly to codrin, ask me if you want a copy. rainer From tunes-request@ens.fr Mon Jun 19 14:23:24 1995 Return-Path: <tunes-request@ens.fr> Received: from mx4.u.washington.edu by saul5.u.washington.edu (5.65+UW95.05/UW-NDC Revision: 2.33 ) id AA15652; Mon, 19 Jun 95 14:23:22 -0700 Received: from nef.ens.fr by mx4.u.washington.edu (5.65+UW95.05/UW-NDC Revision: 2.31 ) id AA27791; Mon, 19 Jun 95 14:23:18 -0700 Received: by nef.ens.fr (5.65c8/ULM-1.0) Id AA18325 ; Mon, 19 Jun 1995 22:02:14 +0200 Received: from owl.csusm.edu by nef.ens.fr (5.65c8/ULM-1.0) Id AA18310 ; Mon, 19 Jun 1995 22:02:07 +0200 Received-Date: Mon, 19 Jun 1995 22:02:07 +0200 Received: by owl.csusm.edu (AIX 4.1/UCB 5.64/4.03) id AA17454; Mon, 19 Jun 1995 13:00:32 -0700 Date: Mon, 19 Jun 1995 13:00:32 -0700 (PDT) From: Billy Tanksley <tanksley@owl.csusm.edu> To: tunes@ens.fr Subject: Re: INT: Worlds and Generic Services In-Reply-To: <9506191800.AA21743@zaphod.physik3.gwdg.de> Message-Id: <Pine.A32.3.91.950619120908.22172B-100000@owl.csusm.edu> Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Errors-To: listman@ens.fr X-Sequence: 602 Status: RO X-Status: On Mon, 19 Jun 1995, Rainer Blome wrote: > Chris wrote: > > -Where are objects when not in a world? > Objects should always be in a world (a context), even if it's the > hardware (it's a hard world ;-). That's how I implemented my object system in Forth. However, there is something to be said for Classes-- essentially, they are objects that have no context. Different systems differ on further details. > > -Multiuser worlds ... would this result in pointless control fights? > We can use the physical properties to break any ties - if two users want to > manipulate an object, some force might give feedback to the users > indicating to them that they are not the only one trying to use an object. Some objects will be single-user; others will be multi-user. Perhaps the application will only request a 'usable representative' of a class, in which case you could use any object of that type that's in reach and not locked down, or create a new one. > Don't take me too literal here - no need for force-feedback input devices > (they do exist), just any kind of feedback will do. Right. > Interfaces project and the rest of the Tunes project is unclear to me. I > propose we define the domain of the Interfaces project as: The interfaces project is entirely seperate from the rest on the Tunes project. > "The issues that pertain to the (virtually) perceived ("physical") > properties of the objects that the user perceives when dealing with the > system." Skip the virtual; some of the things that are doing the percieving are not humans. > Rainer -Billy From tunes-request@ens.fr Mon Jun 19 17:11:14 1995 Return-Path: <tunes-request@ens.fr> Received: from mx4.u.washington.edu by saul5.u.washington.edu (5.65+UW95.05/UW-NDC Revision: 2.33 ) id AA04373; Mon, 19 Jun 95 17:11:13 -0700 Received: from nef.ens.fr by mx4.u.washington.edu (5.65+UW95.05/UW-NDC Revision: 2.31 ) id AA20024; Mon, 19 Jun 95 17:11:11 -0700 Received: by nef.ens.fr (5.65c8/ULM-1.0) Id AA23917 ; Tue, 20 Jun 1995 02:09:28 +0200 Received: from clipper.ens.fr (clipper-gw.ens.fr) by nef.ens.fr (5.65c8/ULM-1.0) Id AA23906 ; Tue, 20 Jun 1995 02:09:24 +0200 Received-Date: Tue, 20 Jun 1995 02:09:24 +0200 Received: from fregate.ens.fr by clipper.ens.fr (4.1/version 1.10 of 88/05/05) id AA21185; Tue, 20 Jun 95 02:09:23 +0200 From: rideau@clipper.ens.fr (Francois-Rene Rideau) Message-Id: <9506200009.AA21185@clipper.ens.fr> Subject: Re: INT: Worlds and Generic Services To: rainer@physik3.gwdg.de (Rainer Blome) Date: Tue, 20 Jun 95 2:09:21 MET DST Cc: tunes@ens.fr (TUNES is a Useful Not Expedient System) In-Reply-To: <9506191800.AA21743@zaphod.physik3.gwdg.de>; from "Rainer Blome" at Jun 19, 95 8:00 pm X-Mailer: ELM [version 2.3 PL11] Errors-To: listman@ens.fr X-Sequence: 606 Status: RO X-Status: First off, I'll remind Chris that as a maintainer of the Interfaces project, his role is to summarize relevant discussion in his WWW pages, so we're not discussing in the air. [I'm backing you Chris; you know, after a while, you'll get used to it, believe, me ;)] [Bizarrely, I've not much to change to what Rainer said in his message] > I was a little disappointed about the amount of feedback (none) to that > little article of mine, you could at least have said "boahring > ... *snooze*" or "who cares?". For those who care, the URL is: > "http://www.physik3.gwdg.de/~rainer/cs/ui.html" Well, did you announce that page here to begin with ? If you did sorry. This page rings a bell, but except for the beginning to which I have nothing to add, it deals too much with visual effects to me. I'm rather interested in the semantics. I'm sorry I haven't a lot to say for or against it; I don't think I would use your pretty interface, but I'd truely like it to be *possible* to integrate it seamlessly to the rest of TUNES. > Still, as I mentioned months before, the distiction between the > Interfaces project and the rest of the Tunes project is unclear to me. I > propose we define the domain of the Interfaces project as: > > "The issues that pertain to the (virtually) perceived ("physical") > properties of the objects that the user perceives when dealing with the > system." Yes something like that (I wouldn't use the same words for that, but the meaning would be roughly the same). So here are topics for the Interface project: * building some automatic (but programmable) interface generators for structures (that is, if I define a structure, automatically generate the behavior of a structured editor for it). Let's take basic constructors lists, vectors, meta-constructors. * having those versions of these generators for text as well as graphic or sound UIs * build some user-friendly context-aware cacheing of last commands, etc. -- , , _ v ~ ^ -- -- Fare -- rideau@clipper.ens.fr -- Francois-Rene Rideau -- +)ang-Vu Ban -- -- ' / . -- Join the TUNES project for a computing system based on computing freedom ! TUNES is a Useful, Not Expedient System WWW page at URL: "http://www.eleves.ens.fr:8080/home/rideau/Tunes/"