Project Athena - X Window System Users and Developers Conference, Day 2 [6/6]

Search transcript...

[MUSIC PLAYING]

PRESENTER 1: Some of the intrinsic facilities that are part of the tool kit are on this slide here. There's some facilities here for collecting input. This is, essentially, a slight enhancement of all of the facilities that you find currently in XLive, Live, XNextEvent, XEnding, and stuff like that. The enhancements are to allow applications or widgets to choose to connect to non-X devices and have input from them be funneled in as events and also to provide for a mechanism for timeouts. But, otherwise, there's sort of a one-to-one correspondence between the XLive, XNextEvent, and the XtNextEvent which is the corresponding toolkit version.

Then there's an event dispatcher, which every widget will typically, on coming into existence, register itself with the event dispatcher. As I mentioned earlier, the X Window is the name of the widget. So the widget will call the event dispatcher, say, this is my X Window name, and here's the routine to call me when an event comes on. This module also provides functionality so the application can dispatch events by saying, here's an event that I read off the input queue. Take care of it.

We just talked about geometry management. There are facilities to register geometry management procedures with widgets. There's a selection management capability. This is pretty much a straight interface to some of the primitives that the Version 11 protocol provides for selection and to allow widget writers to be able to community access that functionality that's in Version 11.

Once again, we chose to use atoms just like the people in the protocol and server implementation groups. The reason we have a separate atom management that is different from the server is performance. We didn't want to have to go to the server every time. So there's sort of a client-side atom management facility.

There's a generalized association table, which is used directly by widgets. And it's used by some of the other facilities to associate various data structures with different widget instances. A resource manager-- we have a prototype of a resource manager currently, which, basically, provides a database that stores things like XResources. Plus, it's a fairly open ended variety of things that you can add-- that you can store in the database and retrieve. The widget writers, then-- the interfaces available to the widget writers allow you to access information that has been stored in the database and also have the underlying resource management do type conversions.

For example, you may want put out some text in your widget, and you may want to know what font to use. The resource manager-- you may want to not know the font as a font info, perhaps. And the resource-- the database may have the font stored as a string. There's some conversion facilities is built in. And as you add your own resource types, there are ways to add your own conversion routines to do the conversion between the various resources.

There's a translation manager, which basically says, a widget, when it receives an event from the outside, it may choose to translate-- here's a list of events that I'm interested in, but I really want to perform actions that are specific to my world and to have an entity out there that performs a translation. For example, a widget implementing an Emacs-style editor may want to see a command saying, move to the beginning of a line when control A is typed. And then there are some facilities for common error handling.

The communication with widgets is, primarily, through-- aside from the initial creation request-- is primarily through messages. We propose a primitive XtSendMsg, and you give the window corresponding to the widget. And you give what the type of the messages in an argument list.

The types of the messages-- some of the common types that we envision right now are the following. By the way, these are atoms, so this is an open-ended list, as need arises. These seem to be types that are fairly common for most widgets. And any widget is free to extend this and add types that are more meaningful for it.

In terms of the argument list, we have a structure which, basically, has a name value pairs, and names are atoms. So, for example, a widget could say move the scrollbar thumb such and such an offset. So there could be an atom saying, thumb move or something, and the offset would then be, perhaps, a floating point, a number which says where along the length of scrollbar the thumb is to be moved to. So the interaction with widgets in terms of passing parameters is done primarily through lists like this. The creation routine itself, when it provides the resources that the widget needs, overriding those that may come from the resource manager, also provides them in using structures of this form.

This is just a list of some of the widgets that we think we will be able to provide in the time frame. And most of these are common ones, buttons, various flavors of radio buttons, or pick any number out of M buttons, and textual subwindows. Where are we? Well, we put out a proposal that was about a month ago. And we asked, when we put out the proposal, that feedback be due in the very near future.

AUDIENCE: [LAUGHS]

PRESENTER 1: It relies-- a lot of this urgency is being driven by this end date. And in order for there to be anything meaningful by this end date, things have to start firming up earlier and earlier here. Otherwise, it's unrealistic to make this. As it is, we're very iffy about this. So we plan to take some of the feedback that-- we've already received some, and we'll incorporate that, produce an updated pack.

Then, we currently have a good bit of the ideas we're presented implemented on version 10 servers based on-- as version 10 client libraries. We have, in fact, as of yesterday, I think everything in the intrinsic layer that I've described is complete, or pretty close to it. We have several widgets, and, in fact, several applications using widgets written just to debug our ideas, all of them done on top of X version 10.

Since we will not have access to this version 11 server for a little while yet, we plan to produce a subset implementation of all the things I said roughly around the start of March. And this would be an implementation done in version 10. We'd be happy to provide this in source form along with whatever documentation we have around that day.

Following that, we will then be working on the version 11 release. This is going to be a really hard date to make, an hopefully we'll make it. This is when version 11 goes out of the door. I'm all done. Any questions?

AUDIENCE MEMBER: How does this relate [INAUDIBLE]? Does anybody actually [INAUDIBLE]? And will this be [INAUDIBLE]?

PRESENTER 1: The question is, how does this relate to XMenu? Is XMenu being used as part of this? The answer is it's-- the emphasis here is on being able to build things like XMenu. One of the things that somebody could do-- and I'm not saying we will do-- is actually layer XMenu on top of the primitives we have here.

We will have a menu implementation package that will go out with this. I'm not sure we'll have XMenu.

AUDIENCE MEMBER: [INAUDIBLE]

PRESENTER 1: These are all-- all the widgets and the intrinsic managers are part of the address base of the client in that sense, yeah.

AUDIENCE MEMBER: The second question [INAUDIBLE] I hope or [INAUDIBLE]?

PRESENTER 1: The question is, is XtSendMsg within the client address base, or does it go to the server? It is within the client address base.

AUDIENCE MEMBER: [INAUDIBLE] example of an application with 100 windows. Given [INAUDIBLE] application [INAUDIBLE], most [INAUDIBLE] 100 windows seems like not a very large number at all. [INAUDIBLE] 500 windows [INAUDIBLE] comment on [INAUDIBLE].

AUDIENCE MEMBER: I guess the best thing-- the best example for [INAUDIBLE] is [INAUDIBLE] various versions [INAUDIBLE] prototype toolkit for [? MA. ?] And [INAUDIBLE] talking to one of the [INAUDIBLE] in fact, it's currently using for each of [INAUDIBLE] two windows rather than one, sort of a gross efficiency [? crock ?] at the moment. So in fact, the number of things-- widgets visible on your screen in that one application is of order 80, I think I counted on my [INAUDIBLE] mail system. But in fact, [INAUDIBLE] 150 in that one application. And I sometimes have multiple of these up on the screen at once. And that seems to work fine. Though sometimes I find this amazing, but it does seem to--

AUDIENCE: [LAUGHTER]

AUDIENCE MEMBER: Clearly [INAUDIBLE] creep out, what's really saying to me here is hierarchy, that it's relatively solvent, and you have all [? of that ?] windows in a single level hierarchy of the Windows system. And that allows lots of simplification inside the server that gets you a lot more performance. If you put 3,000 top level windows all over your screen, I guarantee you things will get slow.

AUDIENCE: [LAUGHTER]

AUDIENCE: This has been done. It works, but it's crazy. But 150 scattered among different widgets [INAUDIBLE] closed in larger frames seems to work just great. [INAUDIBLE].

PRESENTER 1: Back there.

AUDIENCE MEMBER: [INAUDIBLE]

PRESENTER 1: Hewlett-Packard is especially concerned about that. Maybe you can-- the question was, are you are you concerned-- what kind of applications are you considering building with this tool kit and your real-time applications?

AUDIENCE MEMBER: [INAUDIBLE] real time applications [INAUDIBLE].

AUDIENCE: [LAUGHTER]

PRESENTER 1: The answer is, I can't speak for any specific product lines, but Hewlett-Packard makes lots of instruments.

AUDIENCE: [LAUGHTER]

AUDIENCE MEMBER: Some of the widgets are described in the document as being circular or elliptical, and the [INAUDIBLE] making into a widget [INAUDIBLE] window, how do you resolve those conflicts?

PRESENTER 1: The question is, some of the widgets are described as being circular or elliptical, and XWindows being rectangular, how do you resolve this conflict? I can't recollect which widgets were circular or elliptical, but if there were, it's just for graphical niceties. I mean, it's--

AUDIENCE MEMBER: [INAUDIBLE]

PRESENTER 1: There's a bounding rectangle around it, yeah.

AUDIENCE MEMBER: [INAUDIBLE] select outside the circle and in the bounding rectangle, [INAUDIBLE] have to figure out [INAUDIBLE] circle or not a circle. Otherwise [INAUDIBLE].

PRESENTER 1: Yes?

AUDIENCE MEMBER: We think that's an [INAUDIBLE], by the way.

AUDIENCE: [LAUGHTER]

AUDIENCE MEMBER: [INAUDIBLE] gets much more expensive if you have to search very long lists of rectangles. [INAUDIBLE].

AUDIENCE: [LAUGHTER] [INAUDIBLE].

PRESENTER 1: Last question?

AUDIENCE MEMBER: Yeah, one more. I'm interested in WYSIWYG kinds of things. Do you use these widgets for that? On one level, do you have widgets to do that kind of stuff, or is that another application [INAUDIBLE]?

PRESENTER 1: Well, hopefully, the text widget that we provide will be going in that direction. It may not have all the functionality that you need to do-- the question was, do you have the functionality in there to do WYSIWYG type of applications? The answer is, all the hooks are in there. the? Basic intrinsics are there for you to do your job. Go to it, and give us one. Yeah?

AUDIENCE MEMBER: It's very hard, and I just wondered if you had built in any multiple content.

AUDIENCE: Let me make a comment on that. We view [INAUDIBLE] WYSIWYG problem is really a data representation problem, not a visual problem. We believe that [INAUDIBLE] allow us to do all of the output [INAUDIBLE]. We don't want to get [INAUDIBLE].

[APPLAUSE]

PRESENTER 2: Just briefly, George [INAUDIBLE], stand up. Ralph Swick. Is Charlie Salsbury still here? OK. These are the guys who are responsible for really making this conference work.

[APPLAUSE]

PRESENTER 2: OK, characteristically late, but we would like to encourage people to stay around for a while for questions and answers. And we're open to things here. I mean, you can talk-- you can ask questions about any of the speakers you heard today.

Other things I want to encourage-- a lot of people have been asking me, is anybody doing Mumble? And I say, OK, great think to ask up here, you can stand up and shout, is anybody doing Mumble? You know, let's meet over there if you're doing Mumble after Q&A. OK. So those things are encouraged as well.

AUDIENCE MEMBER: [INAUDIBLE]

AUDIENCE MEMBER: When is it?

PRESENTER 2: It's at 2:00. That one's at 2:00 PM. OK. The mic has been put away, so people are just going to have to shout. Questions?

AUDIENCE MEMBER: If X version [INAUDIBLE] been out for about a year, I guess it's going to be about a year before real version 11 products get out. How do version 10 systems and version 11 systems talk to each other?

PRESENTER 2: Ah.

AUDIENCE: Ah.

PRESENTER 2: OK. There are a couple of different answers to that. One possibility that has been kicked around-- and I don't know whether it's actually being pursued yet-- is to actually build a version 10 server that [INAUDIBLE] version 11 out the back end and layer the servers on top of each other. This will be a boot-strap mechanism.

AUDIENCE: [LAUGHTER]

PRESENTER 2: This is not a long-term solution. This is to say, I've got version 11 clients that I'm really interested in running, and I haven't converted some of these [INAUDIBLE] version 10 applications yet, but I still want to use them. This will give you a mechanism to do that. Another strategy is worrying about conversion tools. How do I convert from version 10 to version 11?

There are some ideas around there. There are no warm bodies who any companies have identified to work on that problem. There's only so much that people inside Athena can do. If there are vendors out there who would like to stand up and be counted to contribute something, that would be a very useful thing to try and contribute.

AUDIENCE MEMBER: Yeah, I've given them a lot of thought. [INAUDIBLE] paramount of what you can do. But the real problem is-- and some piece of it we'll do along the way. But to do the job right is more work. And there's no warm body assigned to that particular task in this point in time.

AUDIENCE MEMBER: [INAUDIBLE] warm body that has already begun designing a version 10 server [INAUDIBLE].

PRESENTER 2: Maybe the two of you ought to get together if you're both working on it, so you don't--

AUDIENCE MEMBER: I have a problem in that I don't have a version 11 server.

AUDIENCE: [LAUGHTER]

[INAUDIBLE]

PRESENTER 2: Right. Alpha test is coming soon. OK. Another question.

[INAUDIBLE]

[LAUGHTER]

PRESENTER 2: That's not a question.

AUDIENCE MEMBER: Is there such a thing [INAUDIBLE]?

PRESENTER 2: A couple of things have been named here today. The protocol documentation was described earlier. You can get that off of ZAP. If you were not at the presentation, I mean, I can put this information on the board again. Is there anybody else who didn't get the information? You can anonymous FTP it off of zap.mit.edu. If you don't know the internet address, go look it up.

AUDIENCE: [LAUGHTER]

PRESENTER 2: The toolkit proposal is on the v10 r4 tape. It's also available via anonymous FTP to zap. XLive documentation for version 11--

AUDIENCE MEMBER: The first-- I mean, the documents have grown. In part, there's more stuff. In part, there have been a number of professional tech writers turning it into something more than [INAUDIBLE] hack manual. And the real easy way to say [INAUDIBLE] easy to get to people [INAUDIBLE] size is [INAUDIBLE]. A small number of requests I might entertain.

PRESENTER 2: You don't want to make it FTP-able off of ZAP?

AUDIENCE MEMBER: It's awfully big.

PRESENTER 2: So is v10 r4, right?

AUDIENCE MEMBER: It's also organized in several hundred files.

PRESENTER 2: Well, you could put a line printer output there, right? Or a postscript output or something?

AUDIENCE MEMBER: [INAUDIBLE]

AUDIENCE: [LAUGHTER]

PRESENTER 2: Whatever your--

AUDIENCE MEMBER: [INAUDIBLE] for the documentation. X version 10 had really no user documentation except command pages, which is fine for some people, but other people trying to learn the XWindow system had severe problems, like [INAUDIBLE]. Is there any-- I assume that some of the vendors that are doing servers are going to have better documentation than that. Will there be anything in the public domain?

PRESENTER 2: If vendors contribute it. You have to realize that, as far as MIT is concerned, Project Athena does not have enormous staff to contribute to this [INAUDIBLE].

[INTERPOSING VOICES]

AUDIENCE MEMBER: [INAUDIBLE] document. [INAUDIBLE] essential X [INAUDIBLE] describes the [? XWL ?] Windows system. It is rather peculiar to [INAUDIBLE] host and that [INAUDIBLE] host and setting your display environment [INAUDIBLE] DS100. But I have a link to send the sources to that around as a [? scribe ?] format. Will be updated [INAUDIBLE] eventually. But that is something that is now in the public domain.

AUDIENCE MEMBER: [INAUDIBLE] .

PRESENTER 2: Right. She should talk to Ralph.

AUDIENCE MEMBER: I guess it sounds like the distributing machine is ZAP, and I'll have to [INAUDIBLE] run it on ZAP.

[INTERPOSING VOICES]

AUDIENCE MEMBER: [INAUDIBLE] expert?

AUDIENCE MEMBER: Yeah, yeah.

AUDIENCE MEMBER: All that line HP [INAUDIBLE] product has a Getting Started with the XWindows system as a little hold your hand through the process [INAUDIBLE].

PRESENTER 2: Are you selling it independently?

AUDIENCE MEMBER: No. It's pretty specific to our-- the implementations also. How do you install it, and [INAUDIBLE] distributes through [INAUDIBLE] computer [INAUDIBLE].

AUDIENCE MEMBER: [INAUDIBLE].

AUDIENCE MEMBER: [INAUDIBLE] Maybe we ought to. There's nothing in here [INAUDIBLE] specific.

AUDIENCE MEMBER: You announced this morning your intention that version 11 would be the final word. What if it's not?

AUDIENCE: [LAUGHTER]

PRESENTER 2: Then it won't be my problem.

AUDIENCE: [LAUGHTER]

[APPLAUSE]

AUDIENCE MEMBER: Then whose problem will it be?

PRESENTER 2: However we decide that-- you know, one of the meetings tomorrow is trying to figure out where the protocol goes from here, who's in charge. And whoever ends up being in charge-- which will probably be some combination of university industrial consortium standards committee-- that will be who decides where it goes from here. One of the [INAUDIBLE] tomorrow is to try and get input on how that should happen.

AUDIENCE MEMBER: [INAUDIBLE]

AUDIENCE: [LAUGHTER]

AUDIENCE MEMBER: On the subject of Mumble, I'm interested in the problem of running the X for low speed lines to display devices like PCs. I'll be hanging around after the Q&A session a little longer if anyone else is interested in [INAUDIBLE].

PRESENTER 2: Do you want to add your name or identify a corner or something?

AUDIENCE MEMBER: My name is [INAUDIBLE], and I think that will be my corner.

AUDIENCE MEMBER: What applications will be distributed with X 11? Has that been decided yet?

AUDIENCE MEMBER: [INAUDIBLE] gets done by when? [INAUDIBLE] anything else. Terminal emulator [INAUDIBLE].

PRESENTER 2: I think a lot of this will depend on what beta test sites do. They turn around code and put it in the public domain and get it back to us. And maybe on the MIT [INAUDIBLE], they'll be lots of interesting things again. But it's going to depend on that kind of thing. [INAUDIBLE].

AUDIENCE MEMBER: I've got a question. I'm a little confused. Does the [INAUDIBLE] live [INAUDIBLE] HP another instance a subset of the text toolkit? [INAUDIBLE].

PRESENTER 2: I'll try and answer that question. If I get it wrong, [INAUDIBLE]. On the v10 r4 tape, there are three tool kits. And the [INAUDIBLE] v10 r4 is sort of pick and choose at your own risk. The intent for version 11 is a melding. But there is one. There is the XToolKit, and there was a meeting of the minds.

AUDIENCE MEMBER: [INAUDIBLE]

PRESENTER 2: Right. There's a design document for that. [INAUDIBLE] But that's the intent. At the moment, there are these three separate things that are all basically the same but different. And a general agreement that they can make them be the same as opposed to being [INAUDIBLE].

AUDIENCE MEMBER: The worst of it was, there was no overriding winner. Each of them had their strong points and their weak points. We haven't even been able to clearly choose between them. One was really [INAUDIBLE] demonstratively considerably better than the other, [INAUDIBLE] wouldn't have fallen back to the [INAUDIBLE] position of all three.

AUDIENCE MEMBER: The point that I was trying to make this morning is that [INAUDIBLE] we have customers who have to migrate their software [INAUDIBLE] supporting our customers [INAUDIBLE].

AUDIENCE MEMBER: There's been a lot of talk about [INAUDIBLE]. The number of vendors I talked to want exactly the opposite. They want totally constrained user interface, because some programmers take it out of control. Is there anything [INAUDIBLE] done about that?

PRESENTER 2: By the vendors or by us?

AUDIENCE MEMBER: [INAUDIBLE]

PRESENTER 2: I mean, to me, it's not something that I can answer. The vendors would have the answer for themselves. There is a war to be fought.

AUDIENCE MEMBER: [INAUDIBLE] such a thing if they put it in the public domain.

PRESENTER 2: You'd have to ask that of Ralph, since he is--

AUDIENCE MEMBER: [INAUDIBLE] MIT doesn't want to be in the software distribution [INAUDIBLE].

PRESENTER 2: Right. As far as Athena is concerned, you know, they're sort of in this situation by default at the moment. But Athena's long-term goal is to get out of this business and to get it back from vendors, rather than getting it to the vendors.

AUDIENCE MEMBER: You do some of that [INAUDIBLE] products.

PRESENTER 2: Yes, but Athena would like to get out of the business of shipping releases.

AUDIENCE MEMBER: But that's a broader issue [INAUDIBLE].

PRESENTER 2: Right.

AUDIENCE MEMBER: The problem with the statement about everybody wanting it [INAUDIBLE] is they always want the one they want. And in fact, [INAUDIBLE] to various customers, is it's the analog of the old one accounting system [INAUDIBLE]. They all want it to be their accountants rather than the one that the guy down the street uses. So we're a long way from one that everybody buys into. And that's one of the reasons why we're trying to do [INAUDIBLE] mechanism so that that war can at least be fought on an equal footing.

PRESENTER 2: I'm sure you're going to see examples of this. At CMU, the Andrew Project is going to be building a [? tiling ?] window manager. And that's going to be what's on campus, basically. And I'm sure they're going to have an application-level user interface to go with that-- that older applications are [INAUDIBLE]. There will be redesign of their current WM strategies. So, you know, within given universities, you're going to see-- I'm sure, withing vendors, you're going to see the same kind of thing. Their applications that they provide will be written to some standard. Now, whether vendors can get together and agree on standards at a higher level--

AUDIENCE MEMBER: [INAUDIBLE] vendors [INAUDIBLE] put this stuff in public domain. I can see that they might not. [INAUDIBLE]

AUDIENCE MEMBER: Along the lines of who's doing what [INAUDIBLE] gee, I messed around with a drive package [INAUDIBLE] has anybody else done this, or is anybody else thinking about it, or has anybody else done the right thing so that I don't have to do it again? I mean, certain things like that. A lot of the questions already are, is anybody doing this? [INAUDIBLE] I haven't seen much of that [INAUDIBLE].

PRESENTER 2: The answer is that I can't answer off the top of my head. I mean, given that it's going through the ARPANET, there are restrictions on how you can use the ARPANET.

AUDIENCE MEMBER: OK, but not necessarily

PRESENTER 2: And it's is nothing peculiar about expert.

AUDIENCE MEMBER: [INAUDIBLE] I'm interested in a drawing package, and I'll put it in the public domain, fine, if I have to write it but--

PRESENTER 2: In general, people asking about other people-- you know, is anybody else working on Mumble? You know, that's perfectly fine. And the usual policy is, sort of, if someone asks about Mumble, then you can sort of tell them, yes, in fact, there's product that you can go by that does Mumble. But it has to be in response to somebody saying, is there a Mumble? Not I [INAUDIBLE].

AUDIENCE MEMBER: I was just going to say, what about future X these types of things [INAUDIBLE].

PRESENTER 2: OK. Do you want another one?

[LAUGHTER]

AUDIENCE MEMBER: Yes.

[INTERPOSING VOICES]

PRESENTER 2: Is this one good?

AUDIENCE: Yes.

[APPLAUSE]

PRESENTER 2: When do you think you would like to see another one?

AUDIENCE MEMBER: Every quarter.

[LAUGHTER]

PRESENTER 2: Is someone willing to run the next one?

[LAUGHTER]

AUDIENCE MEMBER: [INAUDIBLE] alpha and beta test [INAUDIBLE].

PRESENTER 2: How much money would you-- how many people would pay $100 to come to this?

[LAUGHTER]

[INTERPOSING VOICES]

[LAUGHTER]

PRESENTER 2: $200?

[LAUGHTER]

[INTERPOSING VOICES]

PRESENTER 2: This was a lot of work, and a lot of work on the part of people who have never done this before and probably never will--

[LAUGHTER]

PRESENTER 2: --who would like to get back to some fundamental research that they've been avoiding for the last six months by working on other things.

AUDIENCE MEMBER: Speaking of you doing more work, you said at the end of this you were probably going to send something to everybody who attended. Would it be possible to include on that a sort of electronic bibliography of all the people who've said [INAUDIBLE]?

AUDIENCE MEMBER: [INAUDIBLE]

PRESENTER 2: Don't talk to me. [INAUDIBLE].

[INTERPOSING VOICES]

AUDIENCE MEMBER: Let's put it this way. The size of the expert mailing list is monumental. It has broken our mail system numerous times, as all of you know.

PRESENTER 2: Well, some of them don't know because they never [INAUDIBLE].

AUDIENCE MEMBER: Some of you may never have known.

[LAUGHTER]

PRESENTER 2: They think Expert's inactive.

AUDIENCE MEMBER: Right. So it is clearly time. The problem is getting somebody to get the mechanism in place to do the gateway and getting almost everybody off the basic mailing list except people who don't have access to [INAUDIBLE] and so on. There's a lot of [INAUDIBLE].

AUDIENCE MEMBER: [INAUDIBLE]

AUDIENCE MEMBER: No. What I'm saying is you can't say that there is no [INAUDIBLE] whatsoever. Because there are people in the world who, believe it or not, who have no easy way from whatever they work on to read [INAUDIBLE] even though they can receive mail. That's the fundamental problem. That's why there's always been this [INAUDIBLE] groups, there's been a parallel ARPANET mailing list along with the [INAUDIBLE]. That's not the whole world.

PRESENTER 2: Jordan, verify that we are going to send information about the video tape to everybody.

AUDIENCE MEMBER: [INAUDIBLE]

PRESENTER 2: To Expert, not to everybody registered?

AUDIENCE MEMBER: Both.

AUDIENCE MEMBER: We could do both if there was interest in doing that.

PRESENTER 2: I think there are a lot of people here that aren't on Expert. Either we should send it to everybody, or we should announce it through all the same [INAUDIBLE] that we did before.

AUDIENCE MEMBER: [INAUDIBLE] interested in a video tape? OK, that's enough.

PRESENTER 2: We will post to Expert-- we will try and post to Expert the names of all the speakers and their addresses again.

AUDIENCE MEMBER: [INAUDIBLE]

PRESENTER 2: We have warned them we were not going to redistribute them. And it will be up to them.

AUDIENCE MEMBER: Are there any speakers here who will not have electronic [INAUDIBLE]?

[INTERPOSING VOICES]

AUDIENCE MEMBER: [INAUDIBLE]

PRESENTER 2: I don't know if that was a question or a statement, so repeat it.

AUDIENCE MEMBER: When Project Athena will expire-- my question is, you might have some [INAUDIBLE] and then Project Athena will expire, and [INAUDIBLE]?

PRESENTER 2: You should [INAUDIBLE] that.

AUDIENCE MEMBER: No, I'm asking you when Athena expires?

AUDIENCE MEMBER: [INAUDIBLE] The present contract expires [INAUDIBLE]. It's possible that [INAUDIBLE].

AUDIENCE MEMBER: MIT isn't [INAUDIBLE].

AUDIENCE MEMBER: Isn't there a system at Berkeley that's meant to be a [INAUDIBLE] public domain [INAUDIBLE]?

AUDIENCE MEMBER: Yeah. That's [INAUDIBLE] at Berkeley is available. And you can just FTP to it and get whatever you want. It's kind of an open-distribution [INAUDIBLE] bucket. And stuff kind of wanders in there. And, unfortunately, sometimes it gets in there and it's broken. But, sure, anything you're interested-- in fact, everybody ought to do this-- just get on to prang@berkeley.edu. And there's directories there. And there should be some read-me files explaining what's there.

AUDIENCE MEMBER: [INAUDIBLE]

AUDIENCE MEMBER: P-R-A-N-G.

AUDIENCE MEMBER: Recommendation-- for all files that are stored on ZAP, it would be convenient if they also got copied into a similar directory structure on PRANG to avoid many, many megabytes going across country more than once.

AUDIENCE MEMBER: I'll mention that to the guys that are running that. I don't know-- that machine, actually, belongs to one of the people-- I think it was actually donated from [INAUDIBLE]. And I don't know if he's got the disk space. But if he's got the disk space, I'm sure they'd be glad to do that.

PRESENTER 2: If someone would like to volunteer to become official repository of things, I'm sure-- [INAUDIBLE].

AUDIENCE MEMBER: It's not me.

[LAUGHTER]

AUDIENCE MEMBER: If somebody's already doing it at Berkeley for the local environment.

AUDIENCE MEMBER: Since I'm coming from the wrong side of the Atlantic, obviously, do you think it is a possibility if we set up a distribution somewhere in Europe that we could, really, all this material and distribute it on tapes. Or are there any legal or export license problems around this?

AUDIENCE MEMBER: I mean, I think the stuff on Prang is sort of less-known lineage. It's sort of what students decided to put there.

AUDIENCE MEMBER: It's real random.

AUDIENCE MEMBER: Yeah, it's really a random assortment of stuff. And that's sometimes why various random things I didn't pick up with the release foretake was I didn't know where they'd come from. The stuff out of MIT, we have some belief we know where it all came from and believe and hope that there isn't any legal problems with distributing to anybody who wants them.

But there was other stuff on Prang I would just have soon distributed, but in fact just didn't have time to track down the state of them. And that's sort of the difference. Prang is this random thing. And then there's distribution [INAUDIBLE], which is believed to be consistent and have some chance of building on more than one or two flavors of viewing.

AUDIENCE MEMBER: The Department of Commerce won't let you export [INAUDIBLE].

[INTERPOSING VOICES]

AUDIENCE MEMBER: I mean, the MIT distribution is educational software. I believe that that goes around and turns out the door around a lot of that.

AUDIENCE MEMBER: [INAUDIBLE].

[INTERPOSING VOICES]

AUDIENCE MEMBER: We shipped out X to our sites over in Europe. But I just want to point out that HP [INAUDIBLE] and I believe Siemens are proposing X to the X as the standard windowing system to [INAUDIBLE] standard setting group in Europe. And it could be that the [INAUDIBLE] distribution point is [INAUDIBLE] would be [INAUDIBLE].

AUDIENCE MEMBER: [INAUDIBLE]

[LAUGHTER]

[APPLAUSE]

AUDIENCE MEMBER: But you should please not forget that some of the members, actually, are selling some equipment.

PRESENTER 2: So.

AUDIENCE: So.

[LAUGHTER]

AUDIENCE MEMBER: [INAUDIBLE] might not be as easy as it sounds.

AUDIENCE MEMBER: Is there any reconciliation between [INAUDIBLE] and X? Or is that a dead issue? Are they going to forever be competing?

PRESENTER 2: Do you think there's a division?

AUDIENCE: [LAUGHTER]

AUDIENCE MEMBER: I sense a little bit, occasionally, when I read my mail.

AUDIENCE MEMBER: Well, I think it's clear that there is X.

[LAUGHTER]

[APPLAUSE]

AUDIENCE MEMBER: I mean, I don't want to get into political games. So I'll stop. I won't say anymore.

AUDIENCE MEMBER: I guess the other comment is, we should go look at what Adobe said this morning.

AUDIENCE MEMBER: Can I ask what they did say?

[INTERPOSING VOICES]

AUDIENCE MEMBER: Because this seems to be of major interest--

AUDIENCE: [LAUGHTER]

AUDIENCE MEMBER: --this is what they said, so that I don't put any words in their mouth. Adobe Systems, Inc. today announced plans to develop a version of postscript for displays which will be suitable for use as a graphics extension to windowing systems. Postscripts, a page description language developed by Adobe, is the leading standard for printing of high-quality laser printers and typesetters.

Adobe's new package will give programmers both a postscript language interface and a C language interface with a complete range of Postscript's powerful graphic and [INAUDIBLE] capabilities. It will be a full implementation of the language and will be completely compatible with the [INAUDIBLE] version.

Applications will be able to use a windowing system to manipulate windows and use postscript to create their images within a window in a fully device-independent manner. This will make it possible to present on the screen the same text and graphics that can now be printed Postscript laser printers and typesetters.

The XWindows developed at MIT and supported by a large number of work station vendors is one of the windowing systems for which a Postscript extension will be available. Adobe expects to have a package completed by the fourth quarter of this year for licensing on an OEM basis to workstation manufacturers. Postscript is a registered trademark of Adobe Systems, Inc. and [INAUDIBLE] Adobe Systems. That's what they said.

AUDIENCE MEMBER: Do you expect [INAUDIBLE]?

PRESENTER 2: Probably whatever makes money.

AUDIENCE MEMBER: Right. [INAUDIBLE].

PRESENTER 2: Questions? No more questions?

AUDIENCE MEMBER: You touched quickly onto the point that strings and the [INAUDIBLE] protocol can be [INAUDIBLE] as characters. Have you ever looked at some of the mixed representations like the International [INAUDIBLE] Alphabet, which uses [INAUDIBLE], which is very important in Europe for [INAUDIBLE]?

PRESENTER 2: Scott, do you want to--

AUDIENCE MEMBER: I'm sorry.

PRESENTER 2: --respond to-- the question is about mixed character representations, 8- and 16-bit, the [INAUDIBLE], and so on.

AUDIENCE MEMBER: Well, a lot of these protocol issues are [INAUDIBLE] issues really. And in terms of how you [INAUDIBLE] what the [INAUDIBLE] or character encoding is under the particular [INAUDIBLE] you want to display. And I think it's the intent to leave a lot of it deliberately vague [INAUDIBLE] server allow a lot of fonts to be presented by each vendor. So, for example, a European vendor would choose to present a lot of European fonts present the [INAUDIBLE] they wish. Now that's leaving a little vague, and I admit there's not a lot of standardization there. But I think we'll see that become more standard [INAUDIBLE]. Is that satisfactory?

AUDIENCE MEMBER: No.

AUDIENCE: [LAUGHTER]

AUDIENCE MEMBER: Do you have a proposal?

AUDIENCE MEMBER: Well, X/Open has worked on a large package of software describing [INAUDIBLE] for internationalizing Unix, which is the other problem. And I think some of that material might be helpful.

AUDIENCE MEMBER: [INAUDIBLE] is one of the things [INAUDIBLE].

AUDIENCE: [LAUGHTER]

AUDIENCE MEMBER: All of the vendors who are a part of the X/Open [INAUDIBLE] basically signing up to do [INAUDIBLE].

AUDIENCE MEMBER: [INAUDIBLE]

AUDIENCE MEMBER: Well, [INAUDIBLE] does not [INAUDIBLE] ASCII or anything like it. [INTERPOSING VOICES].

AUDIENCE MEMBER: There is the issue of what [INAUDIBLE]. That's an interesting problem.

AUDIENCE MEMBER: Yes.

AUDIENCE MEMBER: [INAUDIBLE] there's a recommended encoding--

AUDIENCE MEMBER: Especially in a networked system.

AUDIENCE MEMBER: Yes.

AUDIENCE MEMBER: There's a recommended encoding for Japanese language systems in the 16-bit space. But there's a problem with the European languages, because there aren't very many agreed upon standards [INAUDIBLE].

AUDIENCE MEMBER: I think you should study the subject.

[INTERPOSING VOICES]

PRESENTER 2: Constrain and standardize the extensions. Again, the intent is that whoever owns the protocol can own what it means to bless an extension as, you know, now part of the core. And, presumably, that same organization can be the place where people trying to propose extensions can get their proposals circulated for review.

AUDIENCE MEMBER: What is the organization for tomorrow morning?

PRESENTER 2: Show up in the room. In each room, hopefully, there will be a chair person who will try and keep the discussion coherent. I believe they're named in the handout. Except for--

AUDIENCE MEMBER: [INAUDIBLE].

PRESENTER 2: The window manager is going to be Mark [INAUDIBLE]. Any more/

AUDIENCE MEMBER: [INAUDIBLE] commentary for the X11 toolkit [INAUDIBLE] tomorrow?

PRESENTER 2: That was what was on the slide. That was for the first round.

AUDIENCE MEMBER: [INAUDIBLE]

AUDIENCE MEMBER: [INAUDIBLE]

AUDIENCE MEMBER: HP sees this as [INAUDIBLE].

PRESENTER 2: OK, that's it.

[APPLAUSE]