9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
* Re: [9fans] GUI toolkit for Plan 9
@ 2002-02-22 11:30 sape
  0 siblings, 0 replies; 89+ messages in thread
From: sape @ 2002-02-22 11:30 UTC (permalink / raw)
  To: 9fans

phaet0n@hotmail.com asked:
   I am wondering if anyone is developing,
   or planning, a GUI toolkit for Plan 9?
   If not, does anyone have any good design
   ideas, especially centring around Plan 9
   features? Are there any good papers on
   this topic?

We have an experimental GUI library at the labs.  It's called libcontrol.
Rob Pike did most of the design and I took over its maintenance and
changed it in various ways.

It relies heavily on the thread library.  The controls (our widgets) are
managed by a control thread.  Operations on controls are sent to
this thread via a Channel of char*, e.g.,
	chanprint(controlset->ctl, "controlname operation parameters");
We have basic controls such as buttons, textbuttons, labels, sliders, texts
and editable windows.  In addition we have metacontrols for composition:
radiobuttons, rows of controls, columns of controls, and stacks of controls.
A stack consists of overlayed controls -- only the top one is visible.
Obviously, you can make rows of columns, or columns of rows, etc.
Stacks, columns, and rows help in doing automatic layout, initially, or
upon resize.
Controls report events via a per-control event channel.  These event
channels can be rewired, for instance, to have the events of a slider
be wired into a text or edit control, turning a slider into a scroll bar.

We have a modest number of applications using it now and there has been
a rumor that maybe acme will once upon a time become a libcontrol user.

	Sape



^ permalink raw reply	[flat|nested] 89+ messages in thread
* Re: [9fans] GUI toolkit for Plan 9
@ 2002-03-07  4:37 okamoto
  0 siblings, 0 replies; 89+ messages in thread
From: okamoto @ 2002-03-07  4:37 UTC (permalink / raw)
  To: 9fans

>a rumor that maybe acme will once upon a time become a libcontrol user.

It'd be great if we could have one.

By the way, an example of our newest user interface is here:

http://basalt.cias.osakafu-u.ac.jp/plan9/planvui.ps

Kenji

PS. I'll be in Houston the next week, so my response will be delayed.



^ permalink raw reply	[flat|nested] 89+ messages in thread
* Re: [9fans] GUI toolkit for Plan 9
@ 2002-03-06  9:50 Roger Peppe
  0 siblings, 0 replies; 89+ messages in thread
From: Roger Peppe @ 2002-03-06  9:50 UTC (permalink / raw)
  To: 9fans

> this should almost be in the FAQ. try "du -a . | grep foo". i've also
> found "grep foo `{du -a . | awk '{print $2}'" to be very useful.
> variations can reproduce most or all of find.

i find the following little shell script saves typing; i use
it all the time,

e.g.
grep '^menuhit' `{find /sys/src/lib* '\.c$'}


% cat /bin/find
#!/bin/rc
if (~ $#* 1 0) {
	echo 'usage: find <dir>... <re>' >[1=2]
	exit usage
}
a=()
while (! ~ $#* 1) {
	a=($a $1)
	shift
}
du -a $a | sed 's/^[^ 	]*[ 	]//' | grep $1


^ permalink raw reply	[flat|nested] 89+ messages in thread
* Re: [9fans] GUI toolkit for Plan 9
@ 2002-03-05 17:29 forsyth
  0 siblings, 0 replies; 89+ messages in thread
From: forsyth @ 2002-03-05 17:29 UTC (permalink / raw)
  To: 9fans

plain
	panic iunlock
is produced by the bootstrap 9load if it attempts to
unlock something that wasn't locked.
it could be ether; it could be ata/scsi.



^ permalink raw reply	[flat|nested] 89+ messages in thread
* Re: [9fans] GUI toolkit for Plan 9
@ 2002-03-04 14:33 Russ Cox
  0 siblings, 0 replies; 89+ messages in thread
From: Russ Cox @ 2002-03-04 14:33 UTC (permalink / raw)
  To: 9fans

> i am not an expert on the formal definitions of C, but the code
> rob (from rsc?) posted earlier certainly seemed reasonable (i'm
> refering to the x=sqrt(3.0) stuff). can someone confirm?

it's hard to fault gcc for that.  gcc was compiling for an
environment where double was the highest internal precision,
and got tripped up because the linux guys set the default
internal precision to long double.



^ permalink raw reply	[flat|nested] 89+ messages in thread
* Re: [9fans] GUI toolkit for Plan 9
@ 2002-03-04 14:02 nigel
  2002-03-05  4:16 ` Martin C.Atkins
  0 siblings, 1 reply; 89+ messages in thread
From: nigel @ 2002-03-04 14:02 UTC (permalink / raw)
  To: 9fans

[-- Attachment #1: Type: text/plain, Size: 561 bytes --]

du -a . | grep ...

panic iunlock can be caused by two things:

	if(l->key == 0)
		print("iunlock: not locked: pc %luX\n", getcallerpc(&l));
	if(!l->isilock)
		print("iunlock of lock: pc %lux, held by %lux\n", getcallerpc(&l), l->pc);

i.e. iunlocking something not locked at all, or iunlocking something
that was locked.

lock = spin lock
ilock = disable interrupts and spin lock

the real interest is the pc printed out, because it tells you where the iunlock()
was called from. You can consult the kernel image to find out where this
is.


[-- Attachment #2: Type: message/rfc822, Size: 3698 bytes --]

From: Martin C.Atkins <martin@mca-ltd.com>
To: 9fans@cse.psu.edu
Subject: Re: [9fans] GUI toolkit for Plan 9
Date: Mon, 4 Mar 2002 19:29:54 +0530
Message-ID: <20020304192954.33a0cb67.martin@mca-ltd.com>

On Mon, 4 Mar 2002 10:07:09 GMT "Thomas Bushnell, BSG" <tb+usenet@becket.net> wrote:
> martin@mca-ltd.com (Martin C.Atkins) writes:
> 
> > I'm sorry that I can't remember *any* attribution, but I thought it
> > was "common wisdom/knowledge" that gcc only really worked properly
> > with -O turned on. That the optimiser "optimised away the bugs put in
> > by the code generator". This is going back a few years, so it may be
> > things have "improved"?
> 
> One of the dangerous things about FUD is that people continue to
> repeat it, when it was never true, without attribution except as
> "common wisdom".

That's as may be. But it never occurred to me that this might be FUD
(until you kindly pointed it out). Rather, I thought it was a
curiosity about the way that gcc's code generation worked (and not
*inherently* incorrect, so long as one didn't regard compiling
without -O as "compiling"), and - more importantly - a hint as to how
to avoid unnecessary pain (to me, as a user of gcc, at that time, and
still now).

(After all, I'm still really a Linux lurker. Also, having lost most
of yesterday trying to get Plan 9 to install on a new machine without
destroying it's partition table (I tried 3 times before giving up and
zeroing the disk), I'm not too well disposed to Plan9 right now.
Although to be fair, it's working great now..... - BTW: What *does*
"panic iunlock" mean (I think that was it), apart from "You're
stuffed - go and hit your head on a nearby wall, and then start
over..."? First time I thought it was because I had done something
silly, but the second time I *hadn't* done the silly thing....
Still, at least the good side effect is that I no-longer have Windows
on the machine :-) )

BTW: what's the Plan9 equivalent of Unix's "find . -name ... -print"? 
(always a good fallback for a beginner :-)

Martin
-- 
Martin C. Atkins	martin@mca-ltd.com
Mission Critical Applications Ltd, U.K.

^ permalink raw reply	[flat|nested] 89+ messages in thread
* Re: [9fans] GUI toolkit for Plan 9
@ 2002-03-04 14:01 anothy
  0 siblings, 0 replies; 89+ messages in thread
From: anothy @ 2002-03-04 14:01 UTC (permalink / raw)
  To: 9fans

// ...what's the Plan9 equivalent of Unix's "find . -name ... -print"? 

this should almost be in the FAQ. try "du -a . | grep foo". i've also
found "grep foo `{du -a . | awk '{print $2}'" to be very useful.
variations can reproduce most or all of find.
ア



^ permalink raw reply	[flat|nested] 89+ messages in thread
* Re: [9fans] GUI toolkit for Plan 9
@ 2002-03-04 13:35 anothy
  0 siblings, 0 replies; 89+ messages in thread
From: anothy @ 2002-03-04 13:35 UTC (permalink / raw)
  To: 9fans

// So far I know of one optimization bug in the 8c compiler
// and none in GCC.  Do you have some you know about but
// aren't reporting?

being a very infrequent user of gcc, and having no emotional
energy invested it its status, i've not been keeping lists of any
strange doings, nor even looking into them fully to determine
whether they're bugs or no. however, a quick google turns up
lots and lots of responses for various queries on gcc optimizer
bugs. further, curious as to what the official bug repository for
gcc bugs is, i wandered over to gcc.gnu.org and noticed they
have an gnats db there. a quick search for non-closed optim.
bugs returns 156 results (the majority of which are in the open
state). that says nothing of previous ones which have been
fixed. given the probability of duplication of bug reports or
people simply being wrong, i imagine the real number is much
lower than 156, but substantially above 1.

i am not an expert on the formal definitions of C, but the code
rob (from rsc?) posted earlier certainly seemed reasonable (i'm
refering to the x=sqrt(3.0) stuff). can someone confirm?
ア



^ permalink raw reply	[flat|nested] 89+ messages in thread
* Re: [9fans] GUI toolkit for Plan 9
@ 2002-03-01 17:21 anothy
  2002-03-04 10:07 ` Thomas Bushnell, BSG
  0 siblings, 1 reply; 89+ messages in thread
From: anothy @ 2002-03-01 17:21 UTC (permalink / raw)
  To: 9fans

// However, one way to decrease the risk is simply to spend more
// effort in care and fixing bugs.  Merely adding a new component
// need not increase risk; it simply means that if you want to bring
// the risk down to where it was before, you have to expend more
// effort.

exactly. but even the gcc folks don't have infinite time/effort. and
i'd assert that the time it takes to maintain a fixed bug likelyhood
increases nearly geometrically (certainly much more than linearly)
with the volume of code.

i do not dispute that the gcc maintainers spend alot of effort
trying to find and eliminate bugs. i simply don't think they spend
enough (because they don't _have_ enough) given the size and
complexity of their code.

i'm certainly willing to grant that agressively-optimizing
compilers like gcc have their place, and i don't think anyone here
has disputed that (comments about gcc specifically are a different
issue entirely). what i think people (including me) take issue with
is your early assertion that 8c (&c.), for _not_ being in that family,
is a "cute toy" (your words).

i think you're under the impression that people here are somehow
making "an argument for why GCC is somehow *bad* for having
such optimizations" (again, you). rather, what i think people are
arguing is that GCC is bad for including optimizations beyond the
maintainer's ability to keep bugs to near-zero.

perhaps (as in maybe) the assertion that compiler optimizers
explicitly consider it an acceptable tradeoff to introduce potential
bugs for probable speed improvements is a bit strong, but the
fact remains that that's what they do, implicitly. while i'd be hard
pressed to find anyone say that outright, you can certainly tell
where a person's priorities lay by where they spend their time.
ア



^ permalink raw reply	[flat|nested] 89+ messages in thread
* Re: [9fans] GUI toolkit for Plan 9
@ 2002-02-28 22:30 bwc
  0 siblings, 0 replies; 89+ messages in thread
From: bwc @ 2002-02-28 22:30 UTC (permalink / raw)
  To: 9fans

When do we get to the point of diminishing returns using optimizing compilers?
Do people actually think that large sources are as free from bugs as
smaller sources are?  Is it worth the uncertainty of fancy compilers
to have your application run 0.09 instead of 0.10 seconds?

N. Wirths guidelines:

	- Use straightforward techniques
	- Simple compilers are more reliable compilers
	- Generate good code for the frequent case;
		don't optimize the exceptions
	- Generate good code from the beginning;
		don't generate bad code and optimize later
	- Don't let the compiler repair poor programming style
	- Generate predictable code
	- What is difficult to compile is usually also difficult to understand
	- Instead of applying more sophisticated compilation techniques,
		simplify the language
	- Strive for short compilation times
	- A compiler is also an educational tool;
		it should inhibit bad programming style
	- Write the compiler in its own language

Hanspeter Mossenbock, `Compiler Construction: The Art of
Niklaus Wirth', The School of Niklaus Wirth: The Art
of Simplicity, 2000, dpunkt.verlag GmbH, pp 55-68. ISBN 1-55860-723-4

 Brantley


^ permalink raw reply	[flat|nested] 89+ messages in thread
* Re: [9fans] GUI toolkit for Plan 9
@ 2002-02-28 21:34 dmr
  0 siblings, 0 replies; 89+ messages in thread
From: dmr @ 2002-02-28 21:34 UTC (permalink / raw)
  To: 9fans

 > I think 3B2 code deserves its own place in hell.  Poring over
 > the ESS#5 code, someone found that there were lots of
 > strcmp(p, "f(") == 0 checks (I may have gotten the exact
 > string wrong but it's close).  It took us a while to figure
 > out why.  Apparently, location 0 on the 3b had the 3 bytes
 > 'f' '(' '\0', someone noticed that when programs blew up
 > they were pointing to "f(", and the worlds most amazing
 > kludge for detecting nil pointers was born.

Happily, it wasn't actually 5ESS, only Unix.

	Dennis


^ permalink raw reply	[flat|nested] 89+ messages in thread
* Re: [9fans] GUI toolkit for Plan 9
@ 2002-02-28 18:56 David Gordon Hogan
  0 siblings, 0 replies; 89+ messages in thread
From: David Gordon Hogan @ 2002-02-28 18:56 UTC (permalink / raw)
  To: 9fans

> Anyone thought of using a file system instead of the actual
> libcontrol design? I mean, stuff like:

Yes, Geoff Langdale did something like this a number
of years ago.  I don't know what happened to it.



^ permalink raw reply	[flat|nested] 89+ messages in thread
* Re: [9fans] GUI toolkit for Plan 9
@ 2002-02-28 18:41 Fco.J.Ballesteros
  0 siblings, 0 replies; 89+ messages in thread
From: Fco.J.Ballesteros @ 2002-02-28 18:41 UTC (permalink / raw)
  To: 9fans

Anyone thought of using a file system instead of the actual
libcontrol design? I mean, stuff like:

mkdir /mnt/gui/panel
echo 'align center' >/mnt/gui/panel/ctl
mkdir /mnt/gui/panel/button
echo 'press me' >/mnt/gui/panel/button/label
cat /mnt/gui/panel/events
and the like.

that would be cool to build silly guis for things like the ipaq
with just silly shell scripts behind the gui.


^ permalink raw reply	[flat|nested] 89+ messages in thread
* Re: [9fans] GUI toolkit for Plan 9
@ 2002-02-28 17:19 anothy
  2002-03-01 10:03 ` Thomas Bushnell, BSG
  0 siblings, 1 reply; 89+ messages in thread
From: anothy @ 2002-02-28 17:19 UTC (permalink / raw)
  To: 9fans

lucio said:
	Adding code to a computer program increases the
	probability of its being incorrect.  Prove me wrong.
then tb responded:
	Your argument is bogus, then.  If *that's* all you mean,
	then you have an argument against *ever* adding *any*
	feature to *anything*, since you would be getting
	"probably gains" and earning "possible incorrect behavior".

tb's extention of lucio's argument does not logically follow. in a
strict logical sense, this is probably because lucio isn't even
_making_ an argument (so it can't be bogus). one can indeed
make some inferences from lucio's assertion (tb: do you argue
with the assertion?), however. it seems tb reads lucio to be
implying something along these lines:
	adding code to a program increases its probability of
	being incorrect, THEREFOR you shouldn't add any code
	to any programs
but i think what lucio, and probably most of the people on the
8c side of the recent 8c/gcc discussion, meant is more like:
	adding code to a program increases its probability of
	being incorrect, THEREFOR you should be sure any gains
	won by this code are greater than this risk.
i don't think anyone here would seriously argue that the
cost/gain decisions should never be made, but rather that the
way the decisions were/are made in gcc is incorrect.
ア



^ permalink raw reply	[flat|nested] 89+ messages in thread
* Re: [9fans] GUI toolkit for Plan 9
@ 2002-02-28 15:22 presotto
  2002-02-28 16:35 ` Ralph Corderoy
                   ` (2 more replies)
  0 siblings, 3 replies; 89+ messages in thread
From: presotto @ 2002-02-28 15:22 UTC (permalink / raw)
  To: 9fans

[-- Attachment #1: Type: text/plain, Size: 959 bytes --]

I think 3B2 code deserves its own place in hell.  Poring over
the ESS#5 code, someone found that there were lots of
strcmp(p, "f(") == 0 checks (I may have gotten the exact
string wrong but it's close).  It took us a while to figure
out why.  Apparently, location 0 on the 3b had the 3 bytes
'f' '(' '\0', someone noticed that when programs blew up
they were pointing to "f(", and the worlds most amazing
kludge for detecting nil pointers was born.

I'm beginning to be convinced that, with the exception
of Ken's registerization, bugs in optimizing compilers
are more likely mistakes than knowing attempts to hang
over the edge too far.

I heard a rumor yesterday that I'ld like dispelled if
possible.  It was that the Linux kernel had to be compiled
with optimization turned on to work.  I just tried compiling
my Redhat system without and it crashed but then I
turned optimization on and it still didn't work, so clearly
I'm incompetent.

[-- Attachment #2: Type: message/rfc822, Size: 2887 bytes --]

From: "AMSRL-CI-CN" <gwyn@arl.army.mil>
To: 9fans@cse.psu.edu
Subject: Re: [9fans] GUI toolkit for Plan 9
Date: Thu, 28 Feb 2002 14:55:33 GMT
Message-ID: <Gs8z4H.Hwp@arl.army.mil>

<presotto@plan9.bell-labs.com> wrote in message
news:181b9e858518e43368953c1050365780@plan9.bell-labs.com...
> what works and what doesn't.  Moving from the VAX to the
> 68020 uncovered lots of null references that were going
> unnoticed in the past.

Long ago, I went through all the user-mode UNIX System V
source code and identified and fixed as many of these kinds
of bugs as I could find.  Unfortunately the system for trouble
reporting was utterly not up to the task of feeding these back
to the official developers.  I think finally most of them got fixed
indirectly via Sun picking them up when Guy Harris helped
merge the System V and BSD sources for them, since he had
my fixed-up System V sources to work from.

Anyway, in the process of doing that work, also in dealing
with some of the code from the AT&T UNIX System
ToolChest, I found that a lot of these VAXisms appeared to
have turned up when AT&T moved the code to 3B2s
(WE32000 architecture), but instead of changing the code to
be truly portable, workarounds were installed under control
of #ifdef u3b conditionals.  Maybe that resulted from some
policy of having to overdocument every change to the base
code unless it was made processor-specific; I don't know.

The biggest culprits seemed to be passing 0 to terminate
execl argument lists and dereferencing argv[i] before testing
for i==argc.

^ permalink raw reply	[flat|nested] 89+ messages in thread
* Re: [9fans] GUI toolkit for Plan 9
@ 2002-02-28 11:03 Bengt Kleberg
  2002-02-28 16:41 ` Thomas Bushnell, BSG
  2002-03-01  0:54 ` Richard Uhtenwoldt
  0 siblings, 2 replies; 89+ messages in thread
From: Bengt Kleberg @ 2002-02-28 11:03 UTC (permalink / raw)
  To: 9fans


> Delivered-To: 9fans@cse.psu.edu
> To: 9fans@cse.psu.edu
> From: "Thomas Bushnell, BSG" <tb+usenet@becket.net>


> Odd that NetBSD uses GCC, isn't it?  No, it's no great wonder why more
> people use GCC than 8c.  There are two reasons:
> 
> GCC generates better code
> GCC has a more liberal license than 8c.

There is also a third reason:
There are programs that use gcc features not present in any other c
compiler. So one needs atleast to have gcc. And once that is decided,
why bother with yet another c compiler?
(The same thing happens with gmake)


bengt



^ permalink raw reply	[flat|nested] 89+ messages in thread
* Re: [9fans] GUI toolkit for Plan 9
@ 2002-02-27 14:19 presotto
  0 siblings, 0 replies; 89+ messages in thread
From: presotto @ 2002-02-27 14:19 UTC (permalink / raw)
  To: 9fans

[-- Attachment #1: Type: text/plain, Size: 876 bytes --]

Bushnell is right.  There's nothing wrong with having heavy duty
optimizations.  Just because you have to use them with caution
doesn't mean they shouldn't be available.  The problem of compiler
complexity is a problem for those developing/maintaining it, not
necessarily for those using it, modulo compile time and you can
get some of that back by backing off the optimization level.
If I had to support GCC I'ld go nuts but as long as someone else is
willing to, why not?  Luckily dhog doesn't have to worry as much
about pulling his hair out.

Having a license that encourages gobs of people to work on
components of the system is nice.  I wish we had such a license
to find out if it is indeed the license that causes that
and not some inherent attraction of the code or system.
A pity that we're held hostage by a lawyer.

Plan 9 held hostage - day 4232

[-- Attachment #2: Type: message/rfc822, Size: 2937 bytes --]

From: "Thomas Bushnell, BSG" <tb+usenet@becket.net>
To: 9fans@cse.psu.edu
Subject: Re: [9fans] GUI toolkit for Plan 9
Date: Wed, 27 Feb 2002 10:20:36 GMT
Message-ID: <87664jxrsw.fsf@becket.becket.net>

edorman@san.rr.com (Eric Dorman) writes:

> IMHO the real deal is whether it's fast enough to do what you want
> it to do.  No doubt 8c would benefit if it had the same zillions 
> of both paid and unpaid hours gcc has, but that's not saying 
> anything earth-shattering; for this particular app it does reasonably
> well, IMO, given the level of effort put into it.  If somebody 
> wants 8c to go faster then they are welcome to turn the crank 
> to make it happen....

Sure, GCC has available way more person-hours to try and get every
last bit of improvement out of the generated code, and 8c just doesn't
have that much time available.  I think Dan Cross is entirely right in
suggesting that such speed improvements might not be worth the effort
it would take to put them into 8c.

But that's only an argument against adding gobs of hairy optimization
to 8c; it's not an argument for why GCC is somehow *bad* for having
such optimizations.  Indeed, it's really an argument for why dropping
8c is the best thing to do!  But then, 8c does really have a great
advantage in speed-of-compilation.  So both compilers are doing useful
things.

Incidentally, the reason GCC has gobs of people working on it is
pretty darn simple.  It's because GCC has a license which encourages
gobs of people to work on it.

Thomas

^ permalink raw reply	[flat|nested] 89+ messages in thread
* Re: [9fans] GUI toolkit for Plan 9
@ 2002-02-27 10:57 Bengt Kleberg
  2002-02-27 11:10 ` Lucio De Re
  0 siblings, 1 reply; 89+ messages in thread
From: Bengt Kleberg @ 2002-02-27 10:57 UTC (permalink / raw)
  To: 9fans


> Delivered-To: 9fans@cse.psu.edu
> To: 9fans@cse.psu.edu
> From: "Thomas Bushnell, BSG" <tb+usenet@becket.net>

> 
> presotto@plan9.bell-labs.com writes:
> 
> > However, it seems to be an accepted consequence amongst compiler
> > writers to trade off _possible_ incorrect code generation against
> > _probable_ speed gains.
> 
> I've never heard someone say that, actually.  Perhaps you could give a
> citation from a compiler writer who said "yeah, this generates
> incorrect code, but hey, it runs fast!"?

I have added _ to emphasize two words that makes the idea clearer. Ie,
it not a question of generating incorrect code, but generating code
that might be incorrect (you know: hard to debug/test for all possible
circumstances...).


bengt



^ permalink raw reply	[flat|nested] 89+ messages in thread
* Re: [9fans] GUI toolkit for Plan 9
@ 2002-02-27 10:45 Fco.J.Ballesteros
  0 siblings, 0 replies; 89+ messages in thread
From: Fco.J.Ballesteros @ 2002-02-27 10:45 UTC (permalink / raw)
  To: 9fans

: But that's only an argument against adding gobs of hairy optimization
: to 8c; it's not an argument for why GCC is somehow *bad* for having
: such optimizations.  Indeed, it's really an argument for why dropping

Once good thing of 8c/8l as they are today is that it's far more easy to
port them that it is to port gcc. IMHO, this is mostly due to the fact that
they are quite simple. So, I'd consider the complexity increase of 8c as
a thing to consider before actually `improving' it. If it gets a bit better
but the price to pay is to make it less simple to port/change, I'd think
twice.


^ permalink raw reply	[flat|nested] 89+ messages in thread
* Re: [9fans] GUI toolkit for Plan 9
@ 2002-02-27 10:26 Fco.J.Ballesteros
  2002-02-28 10:13 ` Thomas Bushnell, BSG
  0 siblings, 1 reply; 89+ messages in thread
From: Fco.J.Ballesteros @ 2002-02-27 10:26 UTC (permalink / raw)
  To: 9fans

Calm down Tom, we all know you always have interesting
things to say.


^ permalink raw reply	[flat|nested] 89+ messages in thread
* Re: [9fans] GUI toolkit for Plan 9
@ 2002-02-26 21:05 forsyth
  0 siblings, 0 replies; 89+ messages in thread
From: forsyth @ 2002-02-26 21:05 UTC (permalink / raw)
  To: 9fans

> Your concern reminds me of people who are scared of garbage collection
> because they think it will have a bug and free live memory.  

this seems to me to ignore the complexity of both theory and code in
the two cases; i'd have said they were significantly different by
inspection.

for instance, i might well consider working hard to prove (formally or informally)
the bulk of a garbage collector; for non-trivial language i don't
think i'd attempt more than proving correct (or arguing the correctness of)
some of the theoretical foundations and abstract algorithms of an
optimising compiler.



^ permalink raw reply	[flat|nested] 89+ messages in thread
* Re: [9fans] GUI toolkit for Plan 9
@ 2002-02-26 20:28 presotto
  2002-02-27  6:54 ` Eric Dorman
  2002-02-28 14:55 ` AMSRL-CI-CN
  0 siblings, 2 replies; 89+ messages in thread
From: presotto @ 2002-02-26 20:28 UTC (permalink / raw)
  To: 9fans

[-- Attachment #1: Type: text/plain, Size: 1687 bytes --]

You're right, there's plenty of blame to go around.  More
than once I was hoist on my own petard with C aliasing
and saved by lots of 'volatile's.  Not surprisingly I
was screwed more than once by tail recursion optimizations
on Sparc's (fun with register files) by lcc.  Ditto with
instruction ordering on MIPS.  In all cases turning off
optimization fixed the problem, regardless of where the
fault lay.  Hence, I can understand Rob's worry about
optimization being an option rather than a requirement.

Programmers tend to know that they are treading where
lesser mortals fear to go when they up the optimization
level.  Especially with C, we are trained largely by
what works and what doesn't.  Moving from the VAX to the
68020 uncovered lots of null references that were going
unnoticed in the past.  Ditto for other coding outside
the spec.  If nothing slaps you down, you get complacent.
Hence, we tend to accept the resulting errors and just
back off optimization when it fails.  We often don't report
the bug because

1) not knowing the compiler writer, its often hard
to say, ``When I use the -O256 flag, my 150,000 line program
acts funny'' and expect to get any satisfaction.
2) we're afraid after 2 weeks of debugging it'll turn out
to be our fault
3) once your code has been rewritten by a machine, its
often incredibly hard to figure out what's broken
4) its not my job, man

If things don't make it through with optimization turned
off, then we report bugs because then we know its not
our fault and have no recourse (except the first day
trying to program around it).  Hence, optimizing compilers
tend to self select for retaining bugs.

[-- Attachment #2: Type: message/rfc822, Size: 2966 bytes --]

From: Mike Haertel <mike@ducky.net>
To: 9fans@cse.psu.edu
Subject: Re: [9fans] GUI toolkit for Plan 9
Date: Tue, 26 Feb 2002 11:47:19 -0800 (PST)
Message-ID: <200202261947.g1QJlJ043207@ducky.net>

 From 9fans-admin@cse.psu.edu Tue Feb 26 11:06:34 2002
From: presotto@plan9.bell-labs.com
To: 9fans@cse.psu.edu
Subject: Re: [9fans] GUI toolkit for Plan 9
Date: Tue, 26 Feb 2002 14:05:49 -0500

>However, it seems to be an
>accepted consequence amongst compiler writers to trade off
>possible incorrect code generation against probable speed
>gains.  I've been burned numerous times by upping the optimization
>level in compilers including gcc.  This is not a new development.
>It was just as true 30 years ago with the fortran and PL1 compilers
>I used.

I'm not convinced that it's necessarily the compiler writers at
fault in many of these cases.  Certainly there are compiler and
optimizer bugs, and probably the more optimization you apply the
more likely you are to tickle these bugs.  You can blame the compiler
for those.

But, at least in the case of C, there are numerous cases where
people write code that is semantically undefined according to the
detailed rules of the C standard, but does what they want under
particular compilers or levels of optimization.  (E.g. how many of
you have assumed that local variables not declared volatile will
hold their values across a longjmp?)

So who to blame?  The compiler writer, who assumes the code being
compiled is standards-conforming?  The standards committee, who get
to decide which programming idioms will have defined behavior?
The programmer, who often doesn't really understand the rules of
the language?  The authors of programming textbooks, who often
downplay or omit these issues entirely?

^ permalink raw reply	[flat|nested] 89+ messages in thread
* Re: [9fans] GUI toolkit for Plan 9
@ 2002-02-26 20:25 Russ Cox
  0 siblings, 0 replies; 89+ messages in thread
From: Russ Cox @ 2002-02-26 20:25 UTC (permalink / raw)
  To: 9fans

> > Ten percent buys you, what, a couple of weeks of Moore's Law?  I'm not
> > against fast compilers - I'm actually rather impressed by good
> > compilers - but I do fret about optimizing compilers breaking my code.
> 
> Oh, of course, but that's a matter of writing correct code.

No, it's also a matter of not having buggy optimizers.

> Your concern reminds me of people who are scared of garbage collection
> because they think it will have a bug and free live memory.  

And this is a matter of not having buggy garbage collectors.

In both case you are assuming that the optimizer/garbage
collector itself has no bugs, which is not always a great assumption.

In both cases it's a case of balancing the benefit you gain
from the chance of a negative effect due to bugs in the
optimizer/garbage collector.  If having ten times as many
optimizations comes at the cost of having ten times as many
optimizer bugs, then I'd think twice about it.

In the optimizer case, the number of confirmed gcc optimizer
bugs at any given time seems to be fairly high, high enough
that reasonable people can run into them with annoying
frequency, especially on non-x86 platforms.  (I know of an
undergrad OS course that was using the latest gcc MIPS
compiler and ran into many of these; in that case, though,
there was no hope: turning off optimizations just selected
a different set of code generation bugs.)

Russ



^ permalink raw reply	[flat|nested] 89+ messages in thread
* Re: [9fans] GUI toolkit for Plan 9
@ 2002-02-26 19:05 presotto
  2002-02-26 19:47 ` Mike Haertel
                   ` (2 more replies)
  0 siblings, 3 replies; 89+ messages in thread
From: presotto @ 2002-02-26 19:05 UTC (permalink / raw)
  To: 9fans

[-- Attachment #1: Type: text/plain, Size: 527 bytes --]

No, it's not really the same.  I've had odd performance changes
when garbage collectors decide to do their thing.  However, they've
never made correct code not work.  However, it seems to be an
accepted consequence amongst compiler writers to trade off
possible incorrect code generation against probable speed
gains.  I've been burned numerous times by upping the optimization
level in compilers including gcc.  This is not a new development.
It was just as true 30 years ago with the fortran and PL1 compilers
I used.

[-- Attachment #2: Type: message/rfc822, Size: 2024 bytes --]

From: "Thomas Bushnell, BSG" <tb+usenet@becket.net>
To: 9fans@cse.psu.edu
Subject: Re: [9fans] GUI toolkit for Plan 9
Date: Tue, 26 Feb 2002 17:13:14 GMT
Message-ID: <87664kgoie.fsf@becket.becket.net>

rob@plan9.bell-labs.com (rob pike) writes:

> Ten percent buys you, what, a couple of weeks of Moore's Law?  I'm not
> against fast compilers - I'm actually rather impressed by good
> compilers - but I do fret about optimizing compilers breaking my code.

Oh, of course, but that's a matter of writing correct code.

Your concern reminds me of people who are scared of garbage collection
because they think it will have a bug and free live memory.  

^ permalink raw reply	[flat|nested] 89+ messages in thread
* Re: [9fans] GUI toolkit for Plan 9
@ 2002-02-26 18:00 andrey mirtchovski
  0 siblings, 0 replies; 89+ messages in thread
From: andrey mirtchovski @ 2002-02-26 18:00 UTC (permalink / raw)
  To: 9fans

[-- Attachment #1: Type: text/plain, Size: 1535 bytes --]

> On the other hand, though I hardly use C much (though I compile a lot of it), I
> have had weird behaviour under -O2, which went away when I removed it.  The gcc
> people are always messing with the optimizer.  That personal experience
> combined with reading docs that say things like "the loop unroller is buggy, so
> be careful when you use -O3" (and what's the deal with all this -O6 stuff?  I
> thought -O3 was the "possible overkill, may slow down code more than speed it
> up" setting) has made me paranoid and now when the compiler segfaults or the
> program segfaults (often C generated by a compiler for another language, which
> is probably particularly strangely written), the first thing I do is remove -O.
> And it sometimes fixes the problem.  For example, the sather compiler will
> segfault if compiled with -O.

http://www.netlib.org/benchweb has several integer-intensive cpu
benchmarks.  i downloaded the tower of hanoi to try a few benchy-marks
just to continue yesterday's tests.

i gave up after finding out that the optimized fbsd ran slower than
the unoptimized one (2.95)..  same behaviour was observed with gcc3.0
on linux...  i can only explain this with the recursive structure of
the program...

having such (weird?) results kind-of defeats the purpose of doing 
a  benchmark...  so i never looked at compiling it on p9

if anyone else is interested, the cpu section of the abovementioned
web page has some more programs.  i tried a few but didn't find
anything interesting


[-- Attachment #2: Type: message/rfc822, Size: 3775 bytes --]

From: Quinn Dunkan <quinn@bolivar.ugcs.caltech.edu>
To: 9fans@cse.psu.edu
Subject: Re: [9fans] GUI toolkit for Plan 9
Date: Tue, 26 Feb 2002 09:48:39 -0800
Message-ID: <20020226174844.9D73634086@bolivar.ugcs.caltech.edu>


> rob@plan9.bell-labs.com (rob pike) writes:
> 
> > Ten percent buys you, what, a couple of weeks of Moore's Law?  I'm not
> > against fast compilers - I'm actually rather impressed by good
> > compilers - but I do fret about optimizing compilers breaking my code.
> 
> Oh, of course, but that's a matter of writing correct code.
> 
> Your concern reminds me of people who are scared of garbage collection
> because they think it will have a bug and free live memory.  

I've always used gc-ed languages, and I've never had any problems due to buggy
gc (except some surprising performance differences between cmucl on x86 and
cmucl on everything else, since they use different gcs).  Once they get the gc
right they tend to leave it alone.

On the other hand, though I hardly use C much (though I compile a lot of it), I
have had weird behaviour under -O2, which went away when I removed it.  The gcc
people are always messing with the optimizer.  That personal experience
combined with reading docs that say things like "the loop unroller is buggy, so
be careful when you use -O3" (and what's the deal with all this -O6 stuff?  I
thought -O3 was the "possible overkill, may slow down code more than speed it
up" setting) has made me paranoid and now when the compiler segfaults or the
program segfaults (often C generated by a compiler for another language, which
is probably particularly strangely written), the first thing I do is remove -O.
And it sometimes fixes the problem.  For example, the sather compiler will
segfault if compiled with -O.

^ permalink raw reply	[flat|nested] 89+ messages in thread
* Re: [9fans] GUI toolkit for Plan 9
@ 2002-02-26 14:30 rob pike
  0 siblings, 0 replies; 89+ messages in thread
From: rob pike @ 2002-02-26 14:30 UTC (permalink / raw)
  To: 9fans

It's too early to be writing mail.  In this:

> I doubt the quality of complation of the kernel has a
> minor effect on runtime of the compiler itself.

I should have said 'major'. My point is that the compiler
will not affect the efficiency of the kernel very much,
as I hope the rest of the post explained better.

-rob



^ permalink raw reply	[flat|nested] 89+ messages in thread
* Re: [9fans] GUI toolkit for Plan 9
@ 2002-02-26 14:25 rob pike
  0 siblings, 0 replies; 89+ messages in thread
From: rob pike @ 2002-02-26 14:25 UTC (permalink / raw)
  To: 9fans

> Somehow I doubt 25,000 lines...

As someone who's looked at MIPS's assembly-language code for
FP support in the kernel, I don't doubt this at all.

-rob



^ permalink raw reply	[flat|nested] 89+ messages in thread
* Re: [9fans] GUI toolkit for Plan 9
@ 2002-02-26 14:24 rob pike
  2002-02-26 17:13 ` Thomas Bushnell, BSG
  0 siblings, 1 reply; 89+ messages in thread
From: rob pike @ 2002-02-26 14:24 UTC (permalink / raw)
  To: 9fans

> Speed is really important, of course, but it's usually thought that
> this is the reason why we want optimizing compilers.  

Ten percent buys you, what, a couple of weeks of Moore's Law?  I'm not
against fast compilers - I'm actually rather impressed by good
compilers - but I do fret about optimizing compilers breaking my code.
Fancy optimizers have fancy bugs.  I'd happily give up the 10% or 20%
those 25,000 lines of code on the MIPS give me if I knew that would
reduce the probability of bugs.

On Plan 9, the code optimizer is enabled by default.  It's been years
since I turned it off (8c -N) to see if the optimizer was breaking my
code, and much longer than that since it did.

-rob



^ permalink raw reply	[flat|nested] 89+ messages in thread
* Re: [9fans] GUI toolkit for Plan 9
@ 2002-02-26 11:24 geoff
  0 siblings, 0 replies; 89+ messages in thread
From: geoff @ 2002-02-26 11:24 UTC (permalink / raw)
  To: 9fans

John Mashey (of AT&T then MIPS then SGI then MIPS and now Sensei
Partners) gave talks at the University of Toronto in the 1980s on the
MIPS architecture and why it would kill the evil 386 archtitecture.
At one of his early talks, he talked about the lengths that the MIPS
optimiser could go to because of customer demand (`some of our
customers will perform hideous obscenities for another 5%' is the
quote I recall, though it might have been 10%, it's been a while).  He
said that the MIPS C compiler at that time was 250,000 lines of source
(presumably C). At a later talk, the size had grown to 500,000 lines.
So I wouldn't be surprised if enormous amounts of code are expended on
seemingly minor details.



^ permalink raw reply	[flat|nested] 89+ messages in thread
* Re: [9fans] GUI toolkit for Plan 9
@ 2002-02-25 14:59 andrey mirtchovski
  0 siblings, 0 replies; 89+ messages in thread
From: andrey mirtchovski @ 2002-02-25 14:59 UTC (permalink / raw)
  To: 9fans

[-- Attachment #1: Type: text/plain, Size: 663 bytes --]

i did that about a year ago -- p9 and linux on identical hardware.  i
think i did post the results here..  i still have kept a powerpoint
presentation that should have them mentioned too, i can put it
somewhere on the web if you want..

in short, p9 was lagging insignificantly (something like 2 seconds out
of 60) for pov-ray image rendering (no IO)..  for dna sequence matching (fasta
algorithm) it was slower, but i contribute that to the overall
unoptimized IO of the system (i may be wrong)...

compile time was hands down a p9 win...

andrey

ps: it is possible to set-up a p9/linux shootout here, but i'm not
sure whether we may do so :)


[-- Attachment #2: Type: message/rfc822, Size: 2270 bytes --]

From: "rob pike" <rob@plan9.bell-labs.com>
To: 9fans@cse.psu.edu
Subject: Re: [9fans] GUI toolkit for Plan 9
Date: Mon, 25 Feb 2002 09:39:17 -0500
Message-ID: <71f9dbfbfc8fadc420ee2b20663fb731@plan9.bell-labs.com>

By the way, if someone out there has Linux and Plan 9 running on the
same hardware, I would be genuinely interested in seeing an good
comparison of run-time and code quality.  Thanks.  I didn't define
'dramatically' in my last message because a) there were two different
machines involved and b) the header files involved were quite
different.  (But it was _dramatic_, and the Plan 9 machine is much
slower.)

-rob

^ permalink raw reply	[flat|nested] 89+ messages in thread
* Re: [9fans] GUI toolkit for Plan 9
@ 2002-02-25 14:41 rob pike
  2002-02-25 17:10 ` Thomas Bushnell, BSG
  0 siblings, 1 reply; 89+ messages in thread
From: rob pike @ 2002-02-25 14:41 UTC (permalink / raw)
  To: 9fans

Also, Plan 9's compilers are known to be weak in floating point, so
make sure you include tests that both include and exclude FP.

-rob



^ permalink raw reply	[flat|nested] 89+ messages in thread
* Re: [9fans] GUI toolkit for Plan 9
@ 2002-02-25 14:39 rob pike
  2002-02-25 17:10 ` Thomas Bushnell, BSG
  0 siblings, 1 reply; 89+ messages in thread
From: rob pike @ 2002-02-25 14:39 UTC (permalink / raw)
  To: 9fans

By the way, if someone out there has Linux and Plan 9 running on the
same hardware, I would be genuinely interested in seeing an good
comparison of run-time and code quality.  Thanks.  I didn't define
'dramatically' in my last message because a) there were two different
machines involved and b) the header files involved were quite
different.  (But it was _dramatic_, and the Plan 9 machine is much
slower.)

-rob



^ permalink raw reply	[flat|nested] 89+ messages in thread
* Re: [9fans] GUI toolkit for Plan 9
@ 2002-02-25 14:34 rob pike
  2002-02-25 17:10 ` Thomas Bushnell, BSG
  0 siblings, 1 reply; 89+ messages in thread
From: rob pike @ 2002-02-25 14:34 UTC (permalink / raw)
  To: 9fans

> I thought he meant the way it vastly outperformed puny little toy
> compilers like the one in Plan 9.

I've heard this before.  People talk about GCC as though it's fast and
generates particularly efficient code.  Neither of these appears to be
true, at least as of a couple of years ago.  I was teaching a course
and, requiring ANSI C, made the students use the commercial SUN C
compiler instead of GCC. (GCC isn't strict or accurate about ANSI no
matter how many flags you turn on.)  I heard a lot of complaints from
the students that GCC was better so we did a shootout.  The SUN
compiler ran several times faster and the code it produced ran about
10%-40% faster on a variety of benchmarks.  This, of course, was on
the SPARC.

Much longer ago, we did a similar shootout with Plan 9's compiler
against GCC on the MIPS, with similar results, but I hear GCC has
improved somewhat on that architecture.

I just did a sloppy compile-time test of Plan 9's 8c against GCC on a
386 and see that 8c runs dramatically faster.  I don't dispute that
GCC could be generating better code, however; I didn't test that and
8c isn't particularly good.  For me, though, compile time matters more
than quality of code, as long as the code is reasonable.

In summary, GCC is reliable, may generate good code (although there's
evidence it's not stellar), but is slow to compile.  Please define
'outperform'.  I won't dispute 'puny' for the Plan 9 compiler,
although I think 'toy' is unwarranted.

-rob



^ permalink raw reply	[flat|nested] 89+ messages in thread
* Re: [9fans] GUI toolkit for Plan 9
@ 2002-02-25  1:30 okamoto
  0 siblings, 0 replies; 89+ messages in thread
From: okamoto @ 2002-02-25  1:30 UTC (permalink / raw)
  To: 9fans

>1) I am wondering if anyone is developing,
>   or planning, a GUI toolkit for Plan 9?

As Charles pointed out, we have control(2) for that where we are working
for our application.   According to my understanding, we need some more
exercise how we can implement GUI programs for Plan 9.   Plan 9 has different
strategy from those of X applications.  Plan 9 uses concurrent programming
and threads(coroutines) for it.   We are now just trying to use its single threaded 
application, which means we have only four processes for an application, and 
one of which consists of many kinds of threads (= coroutines).   So far as our 
program, we have no problem in this strategy.   However, some much larger 
program may require multi-threaded strategy, which is the point I described 
above.
(for out program, I believe we can make it public in March, we need some
more debugging now, and Yoshitatsu has to write thesis. ^_^)

Kenji



^ permalink raw reply	[flat|nested] 89+ messages in thread
* Re: [9fans] GUI toolkit for Plan 9
@ 2002-02-22 13:29 rob pike
  2002-02-22 13:43 ` plan9
  2002-02-22 17:11 ` Dan Cross
  0 siblings, 2 replies; 89+ messages in thread
From: rob pike @ 2002-02-22 13:29 UTC (permalink / raw)
  To: 9fans

> I've been playing with GCC 3.0
> on Linux, and I'm pretty impressed.

What did you find impressive?

-rob



^ permalink raw reply	[flat|nested] 89+ messages in thread
* Re: [9fans] GUI toolkit for Plan 9
@ 2002-02-22 12:42 forsyth
  0 siblings, 0 replies; 89+ messages in thread
From: forsyth @ 2002-02-22 12:42 UTC (permalink / raw)
  To: 9fans

>>   instead. I've been playing with GCC 3.0
>>    on Linux, and I'm pretty impressed. Is
>>    anyone working on getting GNU binutils
>>    and so GCC to generate Plan 9 objects?
>>    That would be a great first step in
>>    getting all that `other code' working.

if the `other code' is at all portable, it's usually not too hard.
as it is, i mean.


^ permalink raw reply	[flat|nested] 89+ messages in thread
* Re: [9fans] GUI toolkit for Plan 9
@ 2002-02-22 12:42 forsyth
  2002-02-25 10:10 ` phaet0n
  0 siblings, 1 reply; 89+ messages in thread
From: forsyth @ 2002-02-22 12:42 UTC (permalink / raw)
  To: 9fans

>>1) I am wondering if anyone is developing,
>>   or planning, a GUI toolkit for Plan 9?
>>   If not, does anyone have any good design
>>   ideas, especially centring around Plan 9
>>   features? Are there any good papers on
>>   this topic?

man 2 control


^ permalink raw reply	[flat|nested] 89+ messages in thread
* [9fans] GUI toolkit for Plan 9
@ 2002-02-22  9:58 phaet0n
  0 siblings, 0 replies; 89+ messages in thread
From: phaet0n @ 2002-02-22  9:58 UTC (permalink / raw)
  To: 9fans

Hello all,

I have a few questions.

1) I am wondering if anyone is developing,
   or planning, a GUI toolkit for Plan 9?
   If not, does anyone have any good design
   ideas, especially centring around Plan 9
   features? Are there any good papers on
   this topic?

2) Someone mentioned freetype a while back.
   Is there any progress on this front? It
   would be really nice if a freetype server
   could publish Plan 9 font bitmaps from
   TrueType or Type 1 font files. Not that
   there's anything wrong with lucida...

3) I asked a while back, and got no reply,
   about Plan 9's object format for a project.
   I presume read the source applied. That
   project fizzled, so I'm generating C
   instead. I've been playing with GCC 3.0
   on Linux, and I'm pretty impressed. Is
   anyone working on getting GNU binutils
   and so GCC to generate Plan 9 objects?
   That would be a great first step in
   getting all that `other code' working.

Awaiting discussion...
--


^ permalink raw reply	[flat|nested] 89+ messages in thread

end of thread, other threads:[~2002-03-07  4:37 UTC | newest]

Thread overview: 89+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-02-22 11:30 [9fans] GUI toolkit for Plan 9 sape
  -- strict thread matches above, loose matches on Subject: below --
2002-03-07  4:37 okamoto
2002-03-06  9:50 Roger Peppe
2002-03-05 17:29 forsyth
2002-03-04 14:33 Russ Cox
2002-03-04 14:02 nigel
2002-03-05  4:16 ` Martin C.Atkins
2002-03-04 14:01 anothy
2002-03-04 13:35 anothy
2002-03-01 17:21 anothy
2002-03-04 10:07 ` Thomas Bushnell, BSG
2002-02-28 22:30 bwc
2002-02-28 21:34 dmr
2002-02-28 18:56 David Gordon Hogan
2002-02-28 18:41 Fco.J.Ballesteros
2002-02-28 17:19 anothy
2002-03-01 10:03 ` Thomas Bushnell, BSG
2002-02-28 15:22 presotto
2002-02-28 16:35 ` Ralph Corderoy
2002-02-28 16:55 ` Thomas Bushnell, BSG
2002-03-01  8:27 ` Martin C.Atkins
2002-03-04 10:07   ` Thomas Bushnell, BSG
2002-03-04 13:59     ` Martin C.Atkins
2002-02-28 11:03 Bengt Kleberg
2002-02-28 16:41 ` Thomas Bushnell, BSG
2002-03-01  0:54 ` Richard Uhtenwoldt
2002-02-27 14:19 presotto
2002-02-27 10:57 Bengt Kleberg
2002-02-27 11:10 ` Lucio De Re
2002-02-27 10:45 Fco.J.Ballesteros
2002-02-27 10:26 Fco.J.Ballesteros
2002-02-28 10:13 ` Thomas Bushnell, BSG
2002-02-26 21:05 forsyth
2002-02-26 20:28 presotto
2002-02-27  6:54 ` Eric Dorman
2002-02-27 10:20   ` Thomas Bushnell, BSG
2002-02-27 10:51     ` Lucio De Re
2002-02-27 13:27       ` Boyd Roberts
2002-02-27 14:20       ` Ish Rattan
2002-02-27 22:44       ` Thomas Bushnell, BSG
2002-02-28  4:41         ` Lucio De Re
2002-02-28 10:19           ` Thomas Bushnell, BSG
2002-02-28 10:14       ` Thomas Bushnell, BSG
2002-02-28 10:49         ` Matt H
2002-03-01 13:25           ` chad
2002-02-28  9:57     ` ozan s yigit
2002-02-28 14:55 ` AMSRL-CI-CN
2002-02-26 20:25 Russ Cox
2002-02-26 19:05 presotto
2002-02-26 19:47 ` Mike Haertel
2002-02-27 10:07 ` Thomas Bushnell, BSG
2002-02-27 10:29   ` Lucio De Re
2002-02-27 12:21     ` Graham Gallagher
2002-02-27 12:59       ` Lucio De Re
2002-02-27 21:07         ` Graham Gallagher
2002-02-28  9:57       ` ozan s yigit
2002-02-28 10:18     ` Thomas Bushnell, BSG
2002-02-28 16:01     ` AMSRL-CI-CN
2002-02-28 14:55 ` AMSRL-CI-CN
2002-02-26 18:00 andrey mirtchovski
2002-02-26 14:30 rob pike
2002-02-26 14:25 rob pike
2002-02-26 14:24 rob pike
2002-02-26 17:13 ` Thomas Bushnell, BSG
2002-02-26 17:44   ` Dan Cross
2002-02-27 10:07     ` Thomas Bushnell, BSG
2002-02-26 17:48   ` Quinn Dunkan
2002-02-26 19:40   ` William Josephson
2002-02-26 11:24 geoff
2002-02-25 14:59 andrey mirtchovski
2002-02-25 14:41 rob pike
2002-02-25 17:10 ` Thomas Bushnell, BSG
2002-02-25 14:39 rob pike
2002-02-25 17:10 ` Thomas Bushnell, BSG
2002-02-25 14:34 rob pike
2002-02-25 17:10 ` Thomas Bushnell, BSG
2002-02-25 17:25   ` Dan Cross
2002-02-25 17:54   ` Boyd Roberts
2002-02-26 10:26     ` Thomas Bushnell, BSG
2002-02-26 10:27     ` Douglas A. Gwyn
2002-02-25  1:30 okamoto
2002-02-22 13:29 rob pike
2002-02-22 13:43 ` plan9
2002-02-25 10:09   ` Thomas Bushnell, BSG
2002-02-22 17:11 ` Dan Cross
2002-02-22 12:42 forsyth
2002-02-22 12:42 forsyth
2002-02-25 10:10 ` phaet0n
2002-02-22  9:58 phaet0n

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).