9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
* Re: [9fans] pipefile
@ 2000-08-02 14:48   ` rob pike
  2000-08-02 15:49     ` James A. Robinson
  0 siblings, 1 reply; 185+ messages in thread
From: rob pike @ 2000-08-02 14:48 UTC (permalink / raw)
  To: 9fans

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

> When I input Japanese like below:
> 
> term% 日本語の入力の練習です。<cr>
> 
> 
> I cannot now return to rc shell.

I don't understand.  Do you want just to enter one line of Japanese text?
The idea was to switch the mode of /dev/cons permanently. I assumed
your Japanese input methods could provide both ASCII and Japanese text.
The pipefile program is a permanent fixture, not useful for just sending
one line and going back to the previous state.

-rob


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

From: okamoto@granite.cias.osakafu-u.ac.jp
To: 9fans@cse.psu.edu
Subject: Re: [9fans] pipefile
Date: Wed, 2 Aug 2000 16:55:47 0900
Message-ID: <200008020754.DAA15253@cse.psu.edu>

>As I said in the beginning, this trick is suitable for continuous
>files such as devices

I was confused in my earlier mail, because I had no EARGF definition
on my libc.h.  Now, I got the new update, and it works now what you
intended (probably).

Then, now I'm wondering rightly☺ how I can end the input, and 
return to shell prompt, when I hit return key on rio environment.  
Yes, I have read rio sources, but it's beyond my ability.  My only 
understand on this is to send nil length font length to the frame of
the window of rio....  I know this procedure is simple, and works 
under acme, too.

When I input Japanese like below:

term% 日本語の入力の練習です。<cr>


I cannot now return to rc shell.

Kenji

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

* Re: [9fans] pipefile
  2000-08-02 14:48   ` [9fans] pipefile rob pike
@ 2000-08-02 15:49     ` James A. Robinson
  0 siblings, 0 replies; 185+ messages in thread
From: James A. Robinson @ 2000-08-02 15:49 UTC (permalink / raw)
  To: 9fans

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset="x-unknown", Size: 668 bytes --]

I think he was thinking of the v2 edition where, with ktrans, you
could hit a ctrl seq and switch into different modes.  I assume that
functionality was always part of ktrans itself, in other words after it's
started it is always running and handles whether or not to do translation.


> > When I input Japanese like below:
> > 
> > term% 日本語の入力の練習です。<cr>
> > 
> > 
> > I cannot now return to rc shell.
> 
> I don't understand.  Do you want just to enter one line of Japanese text?
> The idea was to switch the mode of /dev/cons permanently. I assumed
> your Japanese input methods could provide both ASCII and Japanese text.


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

* Re: [9fans] Re: Solaris thread scheaduling
@ 2000-08-18 15:34 rob pike
       [not found] ` <rob@plan9.bell-labs.com>
  0 siblings, 1 reply; 185+ messages in thread
From: rob pike @ 2000-08-18 15:34 UTC (permalink / raw)
  To: 9fans

What, we should use uncooperative threads?
Adversarial threads? Anarchic threads?

I guess I don't know the terminology.  If POSIX threads
are a good thing, perhaps I don't want to know what they're
better than.

-rob



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

* Re: [9fans] Re: Solaris thread scheaduling
       [not found] ` <rob@plan9.bell-labs.com>
  2000-08-02 14:48   ` [9fans] pipefile rob pike
@ 2000-08-18 20:25   ` Tom Duff
  2000-09-06 21:59   ` [9fans] Reliable Cray Y-MP C90 Supercomputer rob pike
                     ` (18 subsequent siblings)
  20 siblings, 0 replies; 185+ messages in thread
From: Tom Duff @ 2000-08-18 20:25 UTC (permalink / raw)
  To: 9fans

On Aug 18, 11:34am, rob pike wrote:
> Subject: Re: [9fans] Re: Solaris thread scheaduling
> What, we should use uncooperative threads?
> Adversarial threads? Anarchic threads?
>
> I guess I don't know the terminology.  If POSIX threads
> are a good thing, perhaps I don't want to know what they're
> better than.

Cooperative threads are just coroutines.  They're `cooperative'
because if the thread doesn't cooperate by calling the scheduler,
no other thread ever get scheduled.

-- 
Tom Duff.  FUD in optima forma.


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

* Re: [9fans] Reliable Cray Y-MP C90 Supercomputer
@ 2000-09-06 21:59   ` rob pike
  2000-09-06 22:02     ` James A. Robinson
  2000-09-06 22:11     ` Boyd Roberts
  0 siblings, 2 replies; 185+ messages in thread
From: rob pike @ 2000-09-06 21:59 UTC (permalink / raw)
  To: 9fans

> 
> well you i told you not too.  and it didn't feel like water and
> it wasn't coffee.  so what was it?  i believe it came in 18x18x18"
> clear(ish) plastic containers.  does that refresh your memory?
> 

That's fluorinert all right.  But it wasn't me.

-rob




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

* Re: [9fans] Reliable Cray Y-MP C90 Supercomputer
  2000-09-06 21:59   ` [9fans] Reliable Cray Y-MP C90 Supercomputer rob pike
@ 2000-09-06 22:02     ` James A. Robinson
  2000-09-06 22:14       ` Boyd Roberts
  2000-09-06 22:11     ` Boyd Roberts
  1 sibling, 1 reply; 185+ messages in thread
From: James A. Robinson @ 2000-09-06 22:02 UTC (permalink / raw)
  To: 9fans

> > well you i told you not too.  and it didn't feel like water and
> > it wasn't coffee.  so what was it?  i believe it came in 18x18x18"
> > clear(ish) plastic containers.  does that refresh your memory?
> 
> That's fluorinert all right.  But it wasn't me.
> 
> -rob

I bet it was Penn and Teller...
(http://www.sincity.com/penn-n-teller/wired-penn.html)



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

* Re: [9fans] Reliable Cray Y-MP C90 Supercomputer
  2000-09-06 21:59   ` [9fans] Reliable Cray Y-MP C90 Supercomputer rob pike
  2000-09-06 22:02     ` James A. Robinson
@ 2000-09-06 22:11     ` Boyd Roberts
  1 sibling, 0 replies; 185+ messages in thread
From: Boyd Roberts @ 2000-09-06 22:11 UTC (permalink / raw)
  To: 9fans

From: rob pike <rob@plan9.bell-labs.com>
> 
> That's fluorinert all right.  But it wasn't me.
> 
> -rob

oh yes it was, rob.  i remember. 
'round the time you were writing acme IIRC.

and yes, i remember the car ride back from ny with bob.
not one of the cleverest things i'd done...





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

* Re: [9fans] Reliable Cray Y-MP C90 Supercomputer
  2000-09-06 22:02     ` James A. Robinson
@ 2000-09-06 22:14       ` Boyd Roberts
  0 siblings, 0 replies; 185+ messages in thread
From: Boyd Roberts @ 2000-09-06 22:14 UTC (permalink / raw)
  To: 9fans

From: James A. Robinson <jim.robinson@stanford.edu>
> 
> I bet it was Penn and Teller...

no, but they were around.  i got this immortal quote from
lou reed, thanks to rob and penn:

    always go for overkill

rawb, you and your aussie friends...





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

* Re: [9fans] new versions of graphics programs?
@ 2000-09-07 21:57 rob pike
  2000-09-07 22:50 ` Jim Choate
  0 siblings, 1 reply; 185+ messages in thread
From: rob pike @ 2000-09-07 21:57 UTC (permalink / raw)
  To: 9fans

I started on a couple of the tools.  Since the PIC format is
now largely irrelevant - the standard image format captures
much of its capabilities - it seemed worth retiring the fb
software.  Retiring it also helped keep the distribution smaller
and easier to assemble.  But clearly, some of the tools in 
fb/ are worth having.

I worked on a couple of the tools and stumbled into original
bugs that I didn't see how to fix, so that project has stalled.
The shipped gif and jpg tools and the iconv program should
address some of the lower-level needs.  Higher-level
image processing is a project for a dedicated soul; it's a big
job.

-rob




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

* Re: [9fans] new versions of graphics programs?
       [not found] ` <rob@plan9.bell-labs.com>
                     ` (2 preceding siblings ...)
  2000-09-06 21:59   ` [9fans] Reliable Cray Y-MP C90 Supercomputer rob pike
@ 2000-09-07 22:18   ` Tom Duff
  2000-11-01 22:23   ` [9fans] /n/smtp rob pike
                     ` (16 subsequent siblings)
  20 siblings, 0 replies; 185+ messages in thread
From: Tom Duff @ 2000-09-07 22:18 UTC (permalink / raw)
  To: 9fans

> I worked on a couple of the tools and stumbled into original
> bugs that I didn't see how to fix, so that project has stalled.
> The shipped gif and jpg tools and the iconv program should
> address some of the lower-level needs.  Higher-level
> image processing is a project for a dedicated soul; it's a big
> job.

Obviously, I should speak up.  I'm the original author of most
of the fb code, and would be an obvious candidate to revive it
all.  There may be issues with my current employer that I have
to resolve.  I'll take a look at the issues and the code and see
what I might do.  Please speak to me if you have a specific
interest...

-- 
Tom Duff.  Simple PCs with super overcloaked pentiums.



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

* Re: [9fans] new versions of graphics programs?
       [not found]   ` <ravage@einstein.ssz.com>
@ 2000-09-07 22:35     ` Tom Duff
  2000-09-07 23:24       ` Jim Choate
  0 siblings, 1 reply; 185+ messages in thread
From: Tom Duff @ 2000-09-07 22:35 UTC (permalink / raw)
  To: 9fans

> Speaking of new versions of graphics. Anyone remember NAPLPS?
Get thee behind me, Satan!


-- 
Tom Duff.  Simple PCs with super overcloaked pentiums.



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

* Re: [9fans] new versions of graphics programs?
  2000-09-07 21:57 [9fans] new versions of graphics programs? rob pike
@ 2000-09-07 22:50 ` Jim Choate
       [not found]   ` <ravage@einstein.ssz.com>
  0 siblings, 1 reply; 185+ messages in thread
From: Jim Choate @ 2000-09-07 22:50 UTC (permalink / raw)
  To: 9fans


Speaking of new versions of graphics. Anyone remember NAPLPS?

    ____________________________________________________________________

                     He is able who thinks he is able.

                                           Buddha

       The Armadillo Group       ,::////;::-.          James Choate
       Austin, Tx               /:'///// ``::>/|/      ravage@ssz.com
       www.ssz.com            .',  ||||    `/( e\      512-451-7087
                           -====~~mm-'`-```-mm --'-
    --------------------------------------------------------------------





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

* Re: [9fans] new versions of graphics programs?
  2000-09-07 22:35     ` Tom Duff
@ 2000-09-07 23:24       ` Jim Choate
  2000-09-08 15:28         ` please_no_spam_to_
  0 siblings, 1 reply; 185+ messages in thread
From: Jim Choate @ 2000-09-07 23:24 UTC (permalink / raw)
  To: 9fans


On Thu, 7 Sep 2000, Tom Duff wrote:

> > Speaking of new versions of graphics. Anyone remember NAPLPS?
> Get thee behind me, Satan!

You're jealous you didn't think of it sooner...

    ____________________________________________________________________

                     He is able who thinks he is able.

                                           Buddha

       The Armadillo Group       ,::////;::-.          James Choate
       Austin, Tx               /:'///// ``::>/|/      ravage@ssz.com
       www.ssz.com            .',  ||||    `/( e\      512-451-7087
                           -====~~mm-'`-```-mm --'-
    --------------------------------------------------------------------





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

* Re: [9fans] new versions of graphics programs?
  2000-09-07 23:24       ` Jim Choate
@ 2000-09-08 15:28         ` please_no_spam_to_
       [not found]           ` <D.M.Pick@qmw.ac.uk>
  0 siblings, 1 reply; 185+ messages in thread
From: please_no_spam_to_ @ 2000-09-08 15:28 UTC (permalink / raw)
  To: 9fans

Jim Choate (ravage@einstein.ssz.com) wrote:

: On Thu, 7 Sep 2000, Tom Duff wrote:

: > > Speaking of new versions of graphics. Anyone remember NAPLPS?
: > Get thee behind me, Satan!

: You're jealous you didn't think of it sooner...

I was certainly jealous at the time: there were some quite nice ideas in
NAPLPS; especially the coordinate system. Since then I've realised that
if I *had* invented it I would have had to face the prospect of yet another
of my brilliant ideas being undervalued. By the way, can I interest you
in my new mousetrap...

-- 
	David Pick



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

* Re: [9fans] new versions of graphics programs?
       [not found]           ` <D.M.Pick@qmw.ac.uk>
@ 2000-09-08 16:43             ` Tom Duff
  0 siblings, 0 replies; 185+ messages in thread
From: Tom Duff @ 2000-09-08 16:43 UTC (permalink / raw)
  To: 9fans

Jim Choate (ravage@einstein.ssz.com) wrote:
>
> Thu, 7 Sep 2000, Tom Duff wrote:
>
> > > Speaking of new versions of graphics. Anyone remember NAPLPS?
> > Get thee behind me, Satan!
>
> You're jealous you didn't think of it sooner...

I'm sorry, I didn't understand this until
just now...

I wasn't trying to suggest that NAPLPS was
inferior to the alternatives (Prestel or
Ceefax or whatever), but that the whole idea
of transmitting cheezy little display lists
over ISDN or in your TV's vertical interval
was dopey.  (But, if you have to do that
sort of thing, Display Postscript is more
like the right way to do it.)

-- 
Tom Duff.  Superficial similarities spawn spurious statements.



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

* Re: [9fans] /n/smtp
@ 2000-11-01 22:23   ` rob pike
  2000-11-01 22:38     ` Scott Schwartz
  0 siblings, 1 reply; 185+ messages in thread
From: rob pike @ 2000-11-01 22:23 UTC (permalink / raw)
  To: 9fans

> sam should have a named pipe for commands

The code is adaptable, because there are a few diehards here that don't
use plumbing. B works for them since sam checks if plumbing is
available and if not, turns on the pipe stuff.  That should be trivial
to make work on Unix, since it always did.

On Boyd's point, plumbing is of course the evolution of B.

-rob



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

* Re: [9fans] /n/smtp
  2000-11-01 22:23   ` [9fans] /n/smtp rob pike
@ 2000-11-01 22:38     ` Scott Schwartz
  0 siblings, 0 replies; 185+ messages in thread
From: Scott Schwartz @ 2000-11-01 22:38 UTC (permalink / raw)
  To: 9fans

Yes, if you use the old unix samterm, it continues to do what it always
did.


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

* Re: [9fans] Crazy idea... or a new project?
@ 2000-11-24  0:41   ` rob pike
  2000-11-24  0:48     ` Boyd Roberts
  2000-11-24 22:13     ` Scott Schwartz
  0 siblings, 2 replies; 185+ messages in thread
From: rob pike @ 2000-11-24  0:41 UTC (permalink / raw)
  To: 9fans

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

That's a little simplistic.  The x86 is a lousy architecture,
and you're right about the compilers etc.  But all those
lousy drivers, VGAs, USB floppies, it goes on and on.
Are any two the same?  I doubt it.  That's the horror of
PCs, yet is a perhaps unavoidable consequence of the
history that made the PC dominant (c.f. the Mac).

The PC kernel for Plan 9 is huge because of all the drivers
it must have to run on all devices.  Sure we could have
(and perhaps should have) loadable device drivers,
but that is a solution to a problem that shouldn't exist.

-rob


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

From: "Russ Cox" <rsc@plan9.bell-labs.com>
To: 9fans@cse.psu.edu
Subject: Re: [9fans] Crazy idea... or a new project?
Date: Thu, 23 Nov 2000 19:05:08 -0500
Message-ID: <20001124000509.EF643199EE@mail.cse.psu.edu>

I don't agree about the x86.
Sure it's an ugly chip.
Sure it and its PC hosts are complicated.
But the bootstrap code and the compiler
are written.  In Plan 9, it's no different
to write applications for the x86 than it
is to write them for any other architecture.

Russ

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

* Re: [9fans] Crazy idea... or a new project?
  2000-11-24  0:41   ` [9fans] Crazy idea... or a new project? rob pike
@ 2000-11-24  0:48     ` Boyd Roberts
  2000-11-24 22:13     ` Scott Schwartz
  1 sibling, 0 replies; 185+ messages in thread
From: Boyd Roberts @ 2000-11-24  0:48 UTC (permalink / raw)
  To: 9fans

> ... Sure we could have
> (and perhaps should have) loadable device drivers,
> but that is a solution to a problem that shouldn't exist.
> 

yes, in your environment.

but like you can glue a namespace together, why not device
drivers?




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

* Re: [9fans] Crazy idea... or a new project?
  2000-11-24  0:41   ` [9fans] Crazy idea... or a new project? rob pike
  2000-11-24  0:48     ` Boyd Roberts
@ 2000-11-24 22:13     ` Scott Schwartz
  2000-11-24 22:24       ` Boyd Roberts
  1 sibling, 1 reply; 185+ messages in thread
From: Scott Schwartz @ 2000-11-24 22:13 UTC (permalink / raw)
  To: 9fans

| Sure we could have
| (and perhaps should have) loadable device drivers,
| but that is a solution to a problem that shouldn't exist.

Just to digress for a moment, I've never liked the idea of loadable
device drivers, because they seeem like such a stopgap measure.  Either a
real microkernel (ala QNX) or a conventional but pagable kernel would
address the space issue in a (IMHO) cleaner way.  Having the window
system allocate memory from unpageable ram bothers me in a similar way.

I'm sure rob's thought about these issues more than I, so I look forward
to being set straight on the topic. :-)



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

* Re: [9fans] Crazy idea... or a new project?
  2000-11-24 22:13     ` Scott Schwartz
@ 2000-11-24 22:24       ` Boyd Roberts
  0 siblings, 0 replies; 185+ messages in thread
From: Boyd Roberts @ 2000-11-24 22:24 UTC (permalink / raw)
  To: 9fans

From: Scott Schwartz <schwartz@bio.cse.psu.edu>

> Just to digress for a moment, I've never liked the idea of loadable
> device drivers, because they seeem like such a stopgap measure.

maybe you could 'plumb' them.  after boot the kernel gets
handed up a file with rules/whatever to load device drivers
based on interrupts or other device ready 'events'.

i was thinking about digital uda-50 interfaces.  you could
just plug 'em in and ultrix would autoconf them at run
(ie. any) time.  of course, the driver was already loaded.

probably hard to generalise, but it might work out.




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

* Re: [9fans] azerty [french] keyboard support
@ 2001-02-06 17:11   ` rob pike
  2001-02-06 19:10     ` Scott Schwartz
  2001-02-06 19:23     ` Dan Cross
  0 siblings, 2 replies; 185+ messages in thread
From: rob pike @ 2001-02-06 17:11 UTC (permalink / raw)
  To: 9fans

It would be very little work to create a file, writable only by eve,
that allows you to
	cp /lib/keyboard /dev/kbdtrans
or some such and avoid the recompilation.  However, this problem
is a local one and it doesn't feel right to make it so generally
programmable.  Something more along the way timezone works
would suit me better, but I don't see the way.

-rob



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

* Re: [9fans] azerty [french] keyboard support
  2001-02-06 17:11   ` [9fans] azerty [french] keyboard support rob pike
@ 2001-02-06 19:10     ` Scott Schwartz
  2001-02-06 19:23     ` Dan Cross
  1 sibling, 0 replies; 185+ messages in thread
From: Scott Schwartz @ 2001-02-06 19:10 UTC (permalink / raw)
  To: 9fans

> cp /lib/keyboard /dev/kbdtrans

It's more a question of personalization than localization.  That mechanism
could also be used for qwerty vs dvorak, or replacing function keys with
selected non-ascii characters.




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

* Re: [9fans] azerty [french] keyboard support
  2001-02-06 17:11   ` [9fans] azerty [french] keyboard support rob pike
  2001-02-06 19:10     ` Scott Schwartz
@ 2001-02-06 19:23     ` Dan Cross
  1 sibling, 0 replies; 185+ messages in thread
From: Dan Cross @ 2001-02-06 19:23 UTC (permalink / raw)
  To: 9fans

In article <20010206171115.E303A199F8@mail.cse.psu.edu> you write:
>It would be very little work to create a file, writable only by eve,
>that allows you to
>	cp /lib/keyboard /dev/kbdtrans
>or some such and avoid the recompilation.  However, this problem
>is a local one and it doesn't feel right to make it so generally
>programmable.  Something more along the way timezone works
>would suit me better, but I don't see the way.

No, you're right; it is a local problem.  But a solution might fix a
bunch of local problems.  :-)  A filesystem to handle the keyboard is
my best guess, but that isn't gaining a lot of favor.

I agree, though, that putting the programmability into the kernel
isn't a good solution....

	- Dan C.



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

* Re: [9fans] 9p2k, fsync
@ 2001-02-07 15:23   ` rob pike
  2001-02-07 18:42     ` Scott Schwartz
  2001-02-08  1:19     ` Dan Cross
  0 siblings, 2 replies; 185+ messages in thread
From: rob pike @ 2001-02-07 15:23 UTC (permalink / raw)
  To: 9fans

Fsync etc. is at the wrong level.  The issue is not a system-wide
question, but a file-server question.  As a trivial example of how
to think about this problem,
	disk/kfscmd sync
strikes closer to the way the problem should be handled than
a 'sync' system call.  The details of how a file server backs up
and stabilizes its storage are specific to the server, and should
be implemented by it.  Plan 9 conventions show how to provide
such an interface; the file protocol is not the place.

-rob



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

* Re: [9fans] 9p2k, fsync
  2001-02-07 15:23   ` [9fans] 9p2k, fsync rob pike
@ 2001-02-07 18:42     ` Scott Schwartz
  2001-02-08  1:19     ` Dan Cross
  1 sibling, 0 replies; 185+ messages in thread
From: Scott Schwartz @ 2001-02-07 18:42 UTC (permalink / raw)
  To: 9fans

| Fsync etc. is at the wrong level.  The issue is not a system-wide
| question, but a file-server question.

So how does an application with an open fd assure that the write()s it
has issued are really on disk?  It's impossible for that program to tell
which file server you're using.  In fact, you might be using several,
if they're stacked up.



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

* Re: [9fans] 9p2k, fsync
  2001-02-07 15:23   ` [9fans] 9p2k, fsync rob pike
  2001-02-07 18:42     ` Scott Schwartz
@ 2001-02-08  1:19     ` Dan Cross
  2001-02-08  9:43       ` Douglas A. Gwyn
  1 sibling, 1 reply; 185+ messages in thread
From: Dan Cross @ 2001-02-08  1:19 UTC (permalink / raw)
  To: 9fans

In article <20010207152343.C1B91199E1@mail.cse.psu.edu> you write:
>Fsync etc. is at the wrong level.  The issue is not a system-wide
>question, but a file-server question.  As a trivial example of how
>to think about this problem,
>	disk/kfscmd sync
>strikes closer to the way the problem should be handled than
>a 'sync' system call.  The details of how a file server backs up
>and stabilizes its storage are specific to the server, and should
>be implemented by it.  Plan 9 conventions show how to provide
>such an interface; the file protocol is not the place.

Hey?  No disagreement that it's a fileserver issue, but I should also
be able to ask the file server to sync the data associated with a
particular FID.

Multics had this problem; no synchronization primitives for segments.
It was impossible to build a database on it for many years (maybe they
fixed it eventually; I don't know), because one couldn't guarantee
serialization of transactions on persistent media.  It would be a shame
to send Plan 9 down the same road for the exact same reason.

	- Dan C.



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

* Re: [9fans] 9p2k, fsync
  2001-02-08  1:19     ` Dan Cross
@ 2001-02-08  9:43       ` Douglas A. Gwyn
  0 siblings, 0 replies; 185+ messages in thread
From: Douglas A. Gwyn @ 2001-02-08  9:43 UTC (permalink / raw)
  To: 9fans

Dan Cross wrote:
> Multics had this problem; no synchronization primitives for segments.
> It was impossible to build a database on it for many years (maybe they
> fixed it eventually; I don't know), because one couldn't guarantee
> serialization of transactions on persistent media.  It would be a shame
> to send Plan 9 down the same road for the exact same reason.

I think that all that is required is consistency.
The server is the right place to enforce that,
and I'd suggest making it an explicit requirement.
How about this: To ensure that a 9P2k message has
been integrated into the server state, just wait
for an ack for the message, or if it is one-way,
send some innocuous request and wait for it to
return data.  Getting the feedback from the server
guarantees that the server (which is responsible
for maintaining consistency) has successfully
processed the previous request.  Of course, if the
service does a lousy job you have reason to demand
an improved server.

I once encountered a disk drive that apparently
wrote data to disk successfully, except it didn't
modify the sectors that it was supposed to have
written.  In the face of such phenomena it is
pointless to insist on absolute guarantees of
synchronization.  Good design calls for such
secondary matters to be handled as close to the
source of the problem as possible, rather than
intruding such low-level considerations into
higher logical levels.  If something does happen
at a lower level that necessarily affects things
at a higher level, then so be it, but if it
couldn't be solved down there it can't be solved
up here either, and up here dealing with it
distracts from the more strategic concerns.
(For similar reasons I am a fan of nested
exception handling instead of functions returning
failure codes, but that's another thread.)


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

* Re: [9fans] isatty
@ 2001-02-14 13:51   ` rob pike
  2001-02-14 16:42     ` Scott Schwartz
  0 siblings, 1 reply; 185+ messages in thread
From: rob pike @ 2001-02-14 13:51 UTC (permalink / raw)
  To: 9fans

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

Yeah. For purity and consistency, I tried to get TD to forget
about prompting in rc, just have it run commands, but he
caved in to pressure from less clean-minded people.

-rob


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

From: rog@vitanuova.com
To: 9fans@cse.psu.edu
Subject: [9fans] isatty
Date: Wed, 14 Feb 2001 13:48:40 0000
Message-ID: <20010214124400.7C58819A16@mail.cse.psu.edu>

> since the idea is that what i see from
> 	ls
> should be a good guide to what grep sees in
> 	ls | grep '\.c'
> then yes, that isatty is indeed a bad idea

mind you, plan 9 isn't entirely innocent in this
respect, c.f. /sys/src/cmd/rc/exec.c:/Isatty

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

* Re: [9fans] isatty
  2001-02-14 13:51   ` [9fans] isatty rob pike
@ 2001-02-14 16:42     ` Scott Schwartz
  0 siblings, 0 replies; 185+ messages in thread
From: Scott Schwartz @ 2001-02-14 16:42 UTC (permalink / raw)
  To: 9fans

| Yeah. For purity and consistency, I tried to get TD to forget
| about prompting in rc, just have it run commands, but he
| caved in to pressure from less clean-minded people.

Maybe the window system could do the prompting.  It could check if there
are any outstanding read requests for a window, and if so, change the
border color, or something like that.




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

* Re: [9fans] sam mod for delete-forward
@ 2001-03-26 14:12   ` rob pike
  2001-03-26 15:37     ` Douglas A. Gwyn
  2001-03-26 15:42     ` Scott Schwartz
  0 siblings, 2 replies; 185+ messages in thread
From: rob pike @ 2001-03-26 14:12 UTC (permalink / raw)
  To: 9fans

I'm nervous about this because rio can't do the same thing, and if you
get in the habit in sam place you'll be sorry in rio when you kill the
process.  I regret the different interpretations of ESC and don't want
to make another mistake like that.

-rob



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

* Re: [9fans] sam mod for delete-forward
  2001-03-26 14:12   ` [9fans] sam mod for delete-forward rob pike
@ 2001-03-26 15:37     ` Douglas A. Gwyn
  2001-03-27  8:25       ` Boyd Roberts
  2001-03-26 15:42     ` Scott Schwartz
  1 sibling, 1 reply; 185+ messages in thread
From: Douglas A. Gwyn @ 2001-03-26 15:37 UTC (permalink / raw)
  To: 9fans

rob pike wrote:
> I'm nervous about this because rio can't do the same thing, and if you
> get in the habit in sam place you'll be sorry in rio when you kill the
> process.  I regret the different interpretations of ESC and don't want
> to make another mistake like that.

I appreciate the point.  It is a pity that the industry didn't agree on
standard uses for control keystrokes.  Actually DEL is RUBOUT, which
should be ignored since it is where the punched paper tape was
backspaced and overpunched to remove an erroneous character.  ESC is
supposed to introduce a *sequence* of characters.  Etc.  I'm not sure
why the early Unix use of DEL to generate an INTR signal was carried
into Plan 9, but frankly it seems like a poor choice.  ETX (^C) is a
semi-standard for this function, just as DEL deletes
forward in most text processors these days.

I doubt you want to go the X11-init-file route, but it might be
useful to employ *some* sort of functional key map, defaulting to
whatever you think is best.  Then sam, rio, and other apps could be
uniformly coded to test for the key corresponding to the function
Delete-Word-Backward, Delete-Char-Forward, Generate-Signal, etc.
instead of hard-wiring the functions.  I know that hard-wired
functions make it easier to use somebody else's environment, but I
don't think that trumps the desire to be able to switch among Plan 9
and other OSes without having to retrain one's fingers.

I just realized that while preparing this message under Solaris with
Netscape's Compose window, I used DEL for delete-forward several times.


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

* Re: [9fans] sam mod for delete-forward
  2001-03-26 14:12   ` [9fans] sam mod for delete-forward rob pike
  2001-03-26 15:37     ` Douglas A. Gwyn
@ 2001-03-26 15:42     ` Scott Schwartz
  1 sibling, 0 replies; 185+ messages in thread
From: Scott Schwartz @ 2001-03-26 15:42 UTC (permalink / raw)
  To: 9fans

| I'm nervous about this because rio can't do the same thing, and if you
| get in the habit in sam place you'll be sorry in rio when you kill the
| process.  I regret the different interpretations of ESC and don't want
| to make another mistake like that.

Does rio really need to use the delete key for that?  Most keyboards
these days have some spare function keys, if not a key that's actually
labled something like "Break".



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

* Re: [9fans] sam mod for delete-forward
  2001-03-26 15:37     ` Douglas A. Gwyn
@ 2001-03-27  8:25       ` Boyd Roberts
  2001-03-27 14:01         ` Sam
  0 siblings, 1 reply; 185+ messages in thread
From: Boyd Roberts @ 2001-03-27  8:25 UTC (permalink / raw)
  To: 9fans

Douglas A. Gwyn <gwyn@arl.army.mil> a crit dans le message :
3ABF5D54.B549A18B@arl.army.mil...
> I appreciate the point.  It is a pity that the industry didn't agree on
> standard uses for control keystrokes.  Actually DEL is RUBOUT, which
> should be ignored since it is where the punched paper tape was
> backspaced and overpunched to remove an erroneous character.  ESC is
> supposed to introduce a *sequence* of characters.

|-------------|
| o o .     o |
|     . o   o |
|   o . o     |
|   o .     o |
| o   .       |
| o o .   o o |
|     . o     |
| o o . o o o |
| o   . o   o |
|     .   o o |
| o o . o     |
| o o .   o o |
| o o .   o   |
| o o . o o o |
|   o .   o   |
| o   .       |
| o o .   o o |
|     . o     |
| o o . o o o |
| o o .       |
|     .     o |
| o o .   o o |
|     . o     |
| o o . o o o |
|   o . o     |
|     .     o |
| o o .   o o |
|     . o     |
| o o . o o o |
| o o .     o |
|     . o   o |
| o   . o   o |
| o o .   o o |
|     . o     |
| o o . o o o |
|     . o o   |
|     .   o o |
|     .     o |
| o o .   o o |
|     . o     |
| o o . o o o |
| o o .       |
| o   .   o   |
| o   .   o   |
| o o .   o o |
|     . o     |
| o o . o o o |
| o   .   o   |
|     .   o o |
| o   . o     |
| o o . o o   |
| o   .       |
| o   . o   o |
| o o .   o o |
|     . o     |
| o o . o o o |
| o   . o o   |
| o o . o     |
|     . o o   |
|   o . o o   |
|     .     o |
|   o . o     |
|     .   o o |
|     . o o   |
| o o .       |
|   o .     o |
|   o . o     |
|     .     o |
| o   . o   o |
| o o .   o o |
|     . o     |
| o o . o o o |
|     .     o |
|     .   o o |
| o o .   o o |
|     . o     |
| o o . o o o |
|     .     o |
|     . o   o |
| o   .       |
| o o .   o o |
|     . o     |
| o o . o o o |
|   o . o o   |
|     .   o o |
|     . o o o |
|     . o o o |
| o o .       |
|     . o o   |
| o   .   o   |
| o o .   o o |
|     . o     |
| o o . o o o |
| o o .     o |
|   o . o     |
|     . o o   |
| o   .   o   |
|     .   o o |
| o o .     o |
| o o .   o o |
| o   .   o o |
|   o .       |
|-------------|


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

* Re: [9fans] sam mod for delete-forward
  2001-03-27  8:25       ` Boyd Roberts
@ 2001-03-27 14:01         ` Sam
  2001-03-27 16:51           ` Dan Cross
  0 siblings, 1 reply; 185+ messages in thread
From: Sam @ 2001-03-27 14:01 UTC (permalink / raw)
  To: 9fans

At the risk of asking a perhaps foolish question . . .
What the hell is this!?!

:),

sam
On Tuesday 27 March 2001 03:25, you wrote:
> Douglas A. Gwyn <gwyn@arl.army.mil> a crit dans le message :
> 3ABF5D54.B549A18B@arl.army.mil...
>
> > I appreciate the point.  It is a pity that the industry didn't agree on
> > standard uses for control keystrokes.  Actually DEL is RUBOUT, which
> > should be ignored since it is where the punched paper tape was
> > backspaced and overpunched to remove an erroneous character.  ESC is
> > supposed to introduce a *sequence* of characters.
> >
> |-------------|
> | o o .     o |
> |     . o   o |
> |   o . o     |
> |   o .     o |
> | o   .       |
> | o o .   o o |
> |     . o     |
> | o o . o o o |
> | o   . o   o |
> |     .   o o |
> | o o . o     |
> | o o .   o o |
> | o o .   o   |
> | o o . o o o |
> |   o .   o   |
> | o   .       |
> | o o .   o o |
> |     . o     |
> | o o . o o o |
> | o o .       |
> |     .     o |
> | o o .   o o |
> |     . o     |
> | o o . o o o |
> |   o . o     |
> |     .     o |
> | o o .   o o |
> |     . o     |
> | o o . o o o |
> | o o .     o |
> |     . o   o |
> | o   . o   o |
> | o o .   o o |
> |     . o     |
> | o o . o o o |
> |     . o o   |
> |     .   o o |
> |     .     o |
> | o o .   o o |
> |     . o     |
> | o o . o o o |
> | o o .       |
> | o   .   o   |
> | o   .   o   |
> | o o .   o o |
> |     . o     |
> | o o . o o o |
> | o   .   o   |
> |     .   o o |
> | o   . o     |
> | o o . o o   |
> | o   .       |
> | o   . o   o |
> | o o .   o o |
> |     . o     |
> | o o . o o o |
> | o   . o o   |
> | o o . o     |
> |     . o o   |
> |   o . o o   |
> |     .     o |
> |   o . o     |
> |     .   o o |
> |     . o o   |
> | o o .       |
> |   o .     o |
> |   o . o     |
> |     .     o |
> | o   . o   o |
> | o o .   o o |
> |     . o     |
> | o o . o o o |
> |     .     o |
> |     .   o o |
> | o o .   o o |
> |     . o     |
> | o o . o o o |
> |     .     o |
> |     . o   o |
> | o   .       |
> | o o .   o o |
> |     . o     |
> | o o . o o o |
> |   o . o o   |
> |     .   o o |
> |     . o o o |
> |     . o o o |
> | o o .       |
> |     . o o   |
> | o   .   o   |
> | o o .   o o |
> |     . o     |
> | o o . o o o |
> | o o .     o |
> |   o . o     |
> |     . o o   |
> | o   .   o   |
> |     .   o o |
> | o o .     o |
> | o o .   o o |
> | o   .   o o |
> |   o .       |
> |-------------|

-- 


Sam Hopkins
------------------------------------------------
Random QOTD:
"It now costs more to amuse a child,
	than it once did to educate his father."



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

* Re: [9fans] sam mod for delete-forward
  2001-03-27 14:01         ` Sam
@ 2001-03-27 16:51           ` Dan Cross
  2001-03-28  8:37             ` Douglas A. Gwyn
  0 siblings, 1 reply; 185+ messages in thread
From: Dan Cross @ 2001-03-27 16:51 UTC (permalink / raw)
  To: 9fans

In article <01032709015600.08511@softnet> you write:
>At the risk of asking a perhaps foolish question . . .
>What the hell is this!?!

It's a paper tape image.  I'm not sure what the text says, though.
I think the first letter is ``I,'' though.

	- Dan C.



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

* Re: [9fans] sam mod for delete-forward
  2001-03-27 16:51           ` Dan Cross
@ 2001-03-28  8:37             ` Douglas A. Gwyn
  2001-03-29  8:26               ` Boyd Roberts
  0 siblings, 1 reply; 185+ messages in thread
From: Douglas A. Gwyn @ 2001-03-28  8:37 UTC (permalink / raw)
  To: 9fans

Dan Cross wrote:
> It's a paper tape image.  I'm not sure what the text says, though.

Since it has 5 levels, one assumes it uses Baudot code.
(He may have put the sprocket track in the wrong row.)
Translating:
WHILE YOU'RE AT IT WHY NOT ADD DOSKEY FUNCTIONALITY TOO THE COMMAND WINDOW?
(There were unnecessary figure/letter shifts around the spaces.)


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

* Re: [9fans] sam mod for delete-forward
  2001-03-28  8:37             ` Douglas A. Gwyn
@ 2001-03-29  8:26               ` Boyd Roberts
  0 siblings, 0 replies; 185+ messages in thread
From: Boyd Roberts @ 2001-03-29  8:26 UTC (permalink / raw)
  To: 9fans

Douglas A. Gwyn <DAGwyn@null.net> a crit dans le message :
> WHILE YOU'RE AT IT WHY NOT ADD DOSKEY FUNCTIONALITY TOO THE COMMAND
WINDOW?
> (There were unnecessary figure/letter shifts around the spaces.)

While I've rarely agreed with you I know you're no fool.


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

* Re: [9fans] snprint(), getfields() specification
@ 2001-05-10 14:59   ` rob pike
  2001-05-10 16:42     ` Scott Schwartz
  2001-05-10 18:13     ` Steve Kilbane
  0 siblings, 2 replies; 185+ messages in thread
From: rob pike @ 2001-05-10 14:59 UTC (permalink / raw)
  To: 9fans

Observe the error:
>     some of the printed characters were discarded.
None of the printed characters was discarded.

I understood what was being said and I am objecting to the design.
I understand the idea - that you can't find out what you need any other
way, so return that information and use strlen() to find out what really
got done - but I still think it sets a dangerous precedent.  Like the strcpy()
that returned a pointer to the end of the string (fixed by ANSI C), the
return value sacrifices a long-standing principle to short-sighted
expedience.  C99 has made many mistakes, and this is hardly the worst,
but it bothers me that people are now (or will soon be) arguing that we
should follow a broken design (c.f. malloc(0)) because it's written down
somewhere.

I suppose we should fix (read break) our snprintf() implementation, but
I can at least hold on to the fact that snprint() is not defined by C99.

I really object to this speculative return value, but it's not my decision
so pooey.  It's malloc(0) and int a[0] all over again.

Sigh.

-rob



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

* Re: [9fans] snprint(), getfields() specification
  2001-05-10 14:59   ` [9fans] snprint(), getfields() specification rob pike
@ 2001-05-10 16:42     ` Scott Schwartz
  2001-05-10 18:13     ` Steve Kilbane
  1 sibling, 0 replies; 185+ messages in thread
From: Scott Schwartz @ 2001-05-10 16:42 UTC (permalink / raw)
  To: 9fans

(Well, not strlen.  Just a check to see if the return value was bigger
than the limit.)

What then is the elegant solution?


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

* Re: [9fans] snprint(), getfields() specification
  2001-05-10 14:59   ` [9fans] snprint(), getfields() specification rob pike
  2001-05-10 16:42     ` Scott Schwartz
@ 2001-05-10 18:13     ` Steve Kilbane
  2001-05-10 21:38       ` Boyd Roberts
  1 sibling, 1 reply; 185+ messages in thread
From: Steve Kilbane @ 2001-05-10 18:13 UTC (permalink / raw)
  To: 9fans

I'd say adopt the other UNIX convention, and return -1. The arguments
aren't "right" - insufficient space - so do nothing. It moves the
speculative behaviour onto the user.

steve




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

* Re: [9fans] snprint(), getfields() specification
  2001-05-10 18:13     ` Steve Kilbane
@ 2001-05-10 21:38       ` Boyd Roberts
  2001-05-11  6:51         ` Steve Kilbane
  0 siblings, 1 reply; 185+ messages in thread
From: Boyd Roberts @ 2001-05-10 21:38 UTC (permalink / raw)
  To: 9fans

From: "Steve Kilbane" <steve@whitecrow.demon.co.uk>
>
> I'd say adopt the other UNIX convention, and return -1. The arguments
> aren't "right" - insufficient space - so do nothing. It moves the
> speculative behaviour onto the user.

no, return a value so you have the best possible idea of why it
didn't 'work'.  if it was a space problem, allocate more space,
loop.

i recall that netscape on windows 3 allowed you to specify how
many tcp connection it would manage at once and the i/o buffer
size.  should you try a > 16kb read/write bad things happened
to your winsock dll.  my dll, which called winsock while doing
all the socks 4 work, had a parameter in the ini file to split
the i/o's up into chunks and then return the total read/written.

should the dll get an i/o error you'd get a short i/o so you'd
continue with the bit that was left and then get an error.  err,
of course, i'm referring to a correctly written winsock application.

yeah, i suffered that sort of junk for 2 years -- ouch.




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

* Re: [9fans] snprint(), getfields() specification
  2001-05-10 21:38       ` Boyd Roberts
@ 2001-05-11  6:51         ` Steve Kilbane
  0 siblings, 0 replies; 185+ messages in thread
From: Steve Kilbane @ 2001-05-11  6:51 UTC (permalink / raw)
  To: 9fans

Boyd:
> no, return a value so you have the best possible idea of why it
> didn't 'work'. 

i know; i was thinking about rob's comments on consistent return
values. however, he's already gone beyond this anyway.

steve




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

* Re: Re[4]: [9fans] home, end ^h^j^k^l
@ 2001-05-19 14:14   ` rob pike
  2001-05-19 14:26     ` Re[6]: " Matt H
                       ` (8 more replies)
  0 siblings, 9 replies; 185+ messages in thread
From: rob pike @ 2001-05-19 14:14 UTC (permalink / raw)
  To: 9fans

Yes, the behavior of the escape key (selecting typed text when nothing
is selected; deleting it when something is), backspace, typing when
text is selected, all this and more comes from Smalltalk, which was
the nicest thing to take ideas from when the precursors to all this
software were written, back in the early 1980s.

My primary regret is in this area is the different behavior of ESC
between sam and acme vs.  rio.  Rio's use of ESC is a great feature,
but it should have been placed on a different key.  But then, which
key on which keyboard...?

> Is it that the people who made the choices used different keyboards to
> the WinTel world?

Yes. The lack of support for Insert, Delete, the Windows key, End,
Page Up, etc.  all stem from the lack of those keys on the keyboards
this software was developed for.  (Plan 9 didn't even run on PCs in
its early days, and I bet the Windows key didn't exist before
Windows.)  Also in the early days of Plan 9 there was a variety of
machines (now, sometimes it seems PCs are the only machines in the
world) and a consequential variety of keyboards.

Are we settling in?  Does everyone agree that ^C is copy and ^V is
paste?  I doubt it.  Do we know that all keyboards will have the keys
we need?  I'm not sure.  Seems like you should decide what features
you want in your user interface, and map those to the available keys,
rather than the other way around.

There are a few decisions I made in Plan 9 that I expected to get
blasted on but that turned out not to generate much heat.  One of
those is that there is no equivalent of stty; the control codes are
fixed in the software.  My argument was that the complexity isn't
worth the convenience; you'll learn what keys do what and adapt.  Let
the other systems use stty to match Plan 9; they're all so proud of
that interface.

I wrote a paper called "Window Systems Should be Transparent".  It's
on my web page; go have a look.  (It predates Plan 9.)

> functioning cursor keys would still be a speed benefit.

This feels true but is false.  There were some fascinating experiments
done a few years ago in which people were given a long, tedious
editing task.  Some of the people were keyboard fans, some were mouse
fans.  Both folks were asked to do the task two ways, in random order,
once using the mouse to do the editing, once using cursor keys etc.
Regardless of their predilections, which was stated up front, after
the experiment everyone who did the task agreed that it was faster to
use the keyboard than the mouse to complete the task.  Everyone.

Here's the kicker: everyone was wrong.  They were being timed, and in
fact the reverse was true.  Although they thought the keyboard was
faster, doing the task using the mouse was faster for everyone, by a
substantial fraction.

The explanation, besides the obvious that arrow keys are actually
pretty slow if you're going more than a line or character, is that
people feel the mouse wastes time because you need to grab it and move
it, but it's time well spent.  The part of the brain that uses
keyboard commands to move the cursor is a higher-order function, and
thinking and planning how to use the keys to get to the destination
blocks thinking about the editing task at hand.  But using the mouse
is done by a lower-order part of the brain, which keeps the editing
part of the brain clear.  There's less task switching going on when
you use the mouse, so you work more efficiently.

If you don't believe me, the story is here:
	http://www.asktog.com/readerMail/1999-12ReaderMail.html
Thanks to some forgotten 9fan who mentioned this a while back.

I didn't know about these experiments when I said, long ago, that
using arrow keys to point at a display is like telling someone how to
go somewhere by giving directions, while using a mouse is like
pointing at a map.  In fact, I never used a screen editor until I had
a mouse, for just this reason.

Before this discussion devolves into the usual silliness, here's
something fun we've been working on.  Who last modified those ether
drivers?

	pc% ls -m ether*.c
	[sape]     --rw-rw-r-- M 2812 sape sys  2820 Apr 18 12:23 ether2000.c
	[sean]     --rw-rw-r-- M 2812 sape sys 34782 May  3 10:19 ether2114x.c
	[sape]     --rw-rw-r-- M 2812 sape sys  4644 Apr 18 12:23 ether589.c
	[sean]     --rw-rw-r-- M 2812 sape sys 13352 May  3 10:18 ether79c970.c
	[sape]     --rw-rw-r-- M 2812 sape sys  6665 Apr 18 12:24 ether8003.c
	[sean]     --rw-rw-r-- M 2812 sape sys 25364 May 17 10:15 ether82543gc.c
	[presotto] --rw-rw-r-- M 2812 sape sys 28587 Apr 23 13:52 ether82557.c
	[sape]     --rw-rw-r-- M 2812 sape sys 17544 Apr 18 12:24 ether8390.c
	[jmk]      --rw-rw-r-- M 2812 sape sys  3745 May  2 17:02 etherec2t.c
	[sean]     --rw-rw-r-- M 2812 sape sys 47826 May 17 10:14 etherelnk3.c
	[jmk]      --rw-rw-r-- M 2812 sape sys 24348 May  2 16:59 etherga620.c
	[sape]     --rw-rw-r-- M 2812 sape sys 15079 Apr 18 12:26 ethersmc.c
	[jmk]      --rw-rw-r-- M 2812 sape sys 28045 May  8 13:18 etherwavelan.c
	pc% 

The -m flag reports the muid (modifier uid) of the file, as reported
in the new 9P protocol.  This is the person who most recently modified
the file, instead of the person who created it.

History reports the information over time:

	pc+% history ether82557.c
	Apr 23 13:52:18 EDT 2001 ether82557.c 28587 [presotto]
	Apr 23 13:52:18 EDT 2001 /n/dump/2001/0519/sys/src/9/pc/ether82557.c 28587 [presotto]
	Apr 18 13:33:20 EDT 2001 /n/dump/2001/0423/sys/src/9/pc/ether82557.c 28510 [jmk]
	Feb 28 18:40:30 EST 2001 /n/dump/2001/0418/sys/src/9/pc/ether82557.c 28445 [jmk]
	Nov 11 10:30:56 EST 2000 /n/dump/2001/0228/sys/src/9/pc/ether82557.c 28058 [sape]
	Jun 19 00:05:20 EDT 2000 /n/dump/2000/1111/sys/src/9/pc/ether82557.c 28058 [jmk]
	...

The history command could now be renamed 'whotoblame'.  And as always,
history -D will tell you why to blame them.

-rob



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

* Re[6]: [9fans] home, end ^h^j^k^l
  2001-05-19 14:14   ` Re[4]: [9fans] home, end ^h^j^k^l rob pike
@ 2001-05-19 14:26     ` Matt H
  2001-05-19 22:45       ` [9fans] ls -m Scott Schwartz
  2001-05-19 15:35     ` Re[4]: [9fans] home, end ^h^j^k^l James A. Robinson
                       ` (7 subsequent siblings)
  8 siblings, 1 reply; 185+ messages in thread
From: Matt H @ 2001-05-19 14:26 UTC (permalink / raw)
  To: 9fans

Hello rob,


rp> If you don't believe me, the story is here:
rp>         http://www.asktog.com/readerMail/1999-12ReaderMail.html
rp> Thanks to some forgotten 9fan who mentioned this a while back.

thanks rob. That has satisfied my curiosity. And that story is
fascinating really.

rp> Before this discussion devolves into the usual silliness, here's
rp> something fun we've been working on.

looks great, good idea.




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

* Re: Re[4]: [9fans] home, end ^h^j^k^l
  2001-05-19 14:14   ` Re[4]: [9fans] home, end ^h^j^k^l rob pike
  2001-05-19 14:26     ` Re[6]: " Matt H
@ 2001-05-19 15:35     ` James A. Robinson
  2001-05-19 20:36     ` Boyd Roberts
                       ` (6 subsequent siblings)
  8 siblings, 0 replies; 185+ messages in thread
From: James A. Robinson @ 2001-05-19 15:35 UTC (permalink / raw)
  To: 9fans

> The -m flag reports the muid (modifier uid) of the file, as reported
> in the new 9P protocol.  This is the person who most recently modified
> the file, instead of the person who created it.

That's pretty cool. I suppose it would be a waste of space to
record who deleted a file as well? One of the problems we had
to deal with twice over the years is someone accidently deleting
important files, but never coming forward. Sifting through process
logs was a not a lot of fun. =)


Jim



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

* Re: Re[4]: [9fans] home, end ^h^j^k^l
  2001-05-19 14:14   ` Re[4]: [9fans] home, end ^h^j^k^l rob pike
  2001-05-19 14:26     ` Re[6]: " Matt H
  2001-05-19 15:35     ` Re[4]: [9fans] home, end ^h^j^k^l James A. Robinson
@ 2001-05-19 20:36     ` Boyd Roberts
  2001-05-19 23:30     ` Richard Elberger
                       ` (5 subsequent siblings)
  8 siblings, 0 replies; 185+ messages in thread
From: Boyd Roberts @ 2001-05-19 20:36 UTC (permalink / raw)
  To: 9fans

> The -m flag reports the muid (modifier uid) of the file, as reported
> in the new 9P protocol.  This is the person who most recently modified
> the file, instead of the person who created it.

now, that looks cool.

with that and /n/dump it would obviate the need for *cs.




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

* [9fans] ls -m
  2001-05-19 14:26     ` Re[6]: " Matt H
@ 2001-05-19 22:45       ` Scott Schwartz
  2001-05-19 22:50         ` Boyd Roberts
  0 siblings, 1 reply; 185+ messages in thread
From: Scott Schwartz @ 2001-05-19 22:45 UTC (permalink / raw)
  To: 9fans

> Before this discussion devolves into the usual silliness, here's
> something fun we've been working on.

Why the brackets?  It looks ok, but seems to makes it gratuitously harder
to parse the output.  



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

* Re: [9fans] ls -m
  2001-05-19 22:45       ` [9fans] ls -m Scott Schwartz
@ 2001-05-19 22:50         ` Boyd Roberts
  0 siblings, 0 replies; 185+ messages in thread
From: Boyd Roberts @ 2001-05-19 22:50 UTC (permalink / raw)
  To: 9fans

From: "Scott Schwartz" <schwartz@bio.cse.psu.edu>
> Why the brackets?  It looks ok, but seems to makes it gratuitously harder
> to parse the output.  

good point.




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

* RE: Re[4]: [9fans] home, end ^h^j^k^l
  2001-05-19 14:14   ` Re[4]: [9fans] home, end ^h^j^k^l rob pike
                       ` (2 preceding siblings ...)
  2001-05-19 20:36     ` Boyd Roberts
@ 2001-05-19 23:30     ` Richard Elberger
  2001-05-20  2:37     ` Boyd Roberts
                       ` (4 subsequent siblings)
  8 siblings, 0 replies; 185+ messages in thread
From: Richard Elberger @ 2001-05-19 23:30 UTC (permalink / raw)
  To: 9fans

>Are we settling in?  Does everyone agree that ^C is copy and ^V is
>paste?  I doubt it.  Do we know that all keyboards will have the keys
>we need?  I'm not sure.  Seems like you should decide what features
>you want in your user interface, and map those to the available keys,
>rather than the other way around.

I worked in software internationalization (in software release management)
for a few years and it just wasn't char set issues, it was hardware as well.
Our inventory of keyboards in the lab was huge.  This is why the mouse (or
other type of pointing device) is really nice.  It really reduces the
problem of having to track all the keyboard dependencies -- *if* the
pointing device is reliable and the application was built with functionality
being run by a pointing device.  I think that stuff like ^C has become a
learnt evil with the most common OS's and shouldn't be a requirement in the
next generation simply because it's habit.

-- rich



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

* [9fans] ls -m
@ 2001-05-20  0:16   ` rob pike
  2001-05-20  0:31     ` Boyd Roberts
  2001-05-20  1:38     ` [9fans] mouse vs key Scott Schwartz
  0 siblings, 2 replies; 185+ messages in thread
From: rob pike @ 2001-05-20  0:16 UTC (permalink / raw)
  To: 9fans

The [muid] format was not chosen at random.  I was worried about
ls -lm producing three uids.  Just printing another uid after the gid
would be confusing: two make a couple but three are a lot to keep
straight intuitively.  I wanted ls -m to be useful without -l, but to
have a format that reminds you of its output.  (Quick: what are the
units in ls -s?)  I also considered the possibility of the muid
showing up in other places, such as history(1), in which a purely
positional mnemonic wouldn't be available.  As it stands, if you
see [muid] anywhere, you have a clue what it means.  I chose a
bracket format because it is a parenthetical remark about the file;
it contains no permission information, for example.

So I understand the objection but I still think it makes sense to
present the muid differently.

-rob



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

* Re: [9fans] ls -m
  2001-05-20  0:16   ` [9fans] ls -m rob pike
@ 2001-05-20  0:31     ` Boyd Roberts
  2001-05-20  1:38     ` [9fans] mouse vs key Scott Schwartz
  1 sibling, 0 replies; 185+ messages in thread
From: Boyd Roberts @ 2001-05-20  0:31 UTC (permalink / raw)
  To: 9fans

> So I understand the objection but I still think it makes sense to
> present the muid differently.

just need to find a clear but simple way to represent it.




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

* [9fans] mouse vs key
  2001-05-20  0:16   ` [9fans] ls -m rob pike
  2001-05-20  0:31     ` Boyd Roberts
@ 2001-05-20  1:38     ` Scott Schwartz
  2001-05-20  6:29       ` Dan Cross
  2001-05-20  8:09       ` Matt H
  1 sibling, 2 replies; 185+ messages in thread
From: Scott Schwartz @ 2001-05-20  1:38 UTC (permalink / raw)
  To: 9fans

Re-reading Tog's articles, I'm struck by one thing:  The studies he cites
were done using the Mac GUI, which has specific properties that make the
mouse efficient (Fitt's law: targets along an edge are faster to access).
Most other systems lack those properties, which might effect the outcome.

Also, elsewhere he's said that mouse chords are a bad idea. 
Possibly not the best source for a defense of Acme. :-)



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

* Re: Re[4]: [9fans] home, end ^h^j^k^l
  2001-05-19 14:14   ` Re[4]: [9fans] home, end ^h^j^k^l rob pike
                       ` (3 preceding siblings ...)
  2001-05-19 23:30     ` Richard Elberger
@ 2001-05-20  2:37     ` Boyd Roberts
  2001-05-20  7:03     ` Lucio De Re
                       ` (3 subsequent siblings)
  8 siblings, 0 replies; 185+ messages in thread
From: Boyd Roberts @ 2001-05-20  2:37 UTC (permalink / raw)
  To: 9fans

> The history command could now be renamed 'whotoblame'.  And as always,
> history -D will tell you why to blame them.

nah, call it 'culprit'.




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

* Re: [9fans] mouse vs key
  2001-05-20  1:38     ` [9fans] mouse vs key Scott Schwartz
@ 2001-05-20  6:29       ` Dan Cross
  2001-05-20  8:09       ` Matt H
  1 sibling, 0 replies; 185+ messages in thread
From: Dan Cross @ 2001-05-20  6:29 UTC (permalink / raw)
  To: 9fans

In article <20010520013841.25839.qmail@g.bio.cse.psu.edu> you write:
>Re-reading Tog's articles, I'm struck by one thing:  The studies he cites
>were done using the Mac GUI, which has specific properties that make the
>mouse efficient (Fitt's law: targets along an edge are faster to access).
>Most other systems lack those properties, which might effect the outcome.

That's interesting; could you elaborate on what those properties
are?

	- Dan C.



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

* Re: Re[4]: [9fans] home, end ^h^j^k^l
  2001-05-19 14:14   ` Re[4]: [9fans] home, end ^h^j^k^l rob pike
                       ` (4 preceding siblings ...)
  2001-05-20  2:37     ` Boyd Roberts
@ 2001-05-20  7:03     ` Lucio De Re
  2001-05-20 11:16     ` paurea
                       ` (2 subsequent siblings)
  8 siblings, 0 replies; 185+ messages in thread
From: Lucio De Re @ 2001-05-20  7:03 UTC (permalink / raw)
  To: 9fans

On Sat, May 19, 2001 at 10:14:25AM -0400, rob pike wrote:
> 
> The -m flag reports the muid (modifier uid) of the file, as reported
> in the new 9P protocol.  This is the person who most recently modified
> the file, instead of the person who created it.
> 
> History reports the information over time:
> 
Wow!
> 	pc+% history ether82557.c
> 	Apr 23 13:52:18 EDT 2001 ether82557.c 28587 [presotto]
> 	Apr 23 13:52:18 EDT 2001 /n/dump/2001/0519/sys/src/9/pc/ether82557.c 28587 [presotto]
> 	Apr 18 13:33:20 EDT 2001 /n/dump/2001/0423/sys/src/9/pc/ether82557.c 28510 [jmk]
> 	Feb 28 18:40:30 EST 2001 /n/dump/2001/0418/sys/src/9/pc/ether82557.c 28445 [jmk]
> 	Nov 11 10:30:56 EST 2000 /n/dump/2001/0228/sys/src/9/pc/ether82557.c 28058 [sape]
> 	Jun 19 00:05:20 EDT 2000 /n/dump/2000/1111/sys/src/9/pc/ether82557.c 28058 [jmk]
> 	...
> 
> The history command could now be renamed 'whotoblame'.  And as always,
> history -D will tell you why to blame them.
> 
Now you just have to have incremental diffs (yes, I know about dump,
just add file-close granularity) and file qualifiers (I forget
what the Macintosh calls them, but in CP/M it is extensions) and we
can take over the world.  Oh, people also ask for ACLs :-)

++L


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

* Re: [9fans] mouse vs key
  2001-05-20  1:38     ` [9fans] mouse vs key Scott Schwartz
  2001-05-20  6:29       ` Dan Cross
@ 2001-05-20  8:09       ` Matt H
  2001-05-20 11:35         ` Re[2]: [9fans] mouse vs key - nethack matt
  2001-05-20 12:50         ` [9fans] mouse vs key Boyd Roberts
  1 sibling, 2 replies; 185+ messages in thread
From: Matt H @ 2001-05-20  8:09 UTC (permalink / raw)
  To: Scott Schwartz

Hello Scott,

SS> (Fitt's law: targets along an edge are faster to access).
SS> Most other systems lack those properties, which might effect the outcome.
I've been looking forward to tactile feedback mice for this kind of
reason. When them mouse crosses a window boundary for instance, it
resists for a short time to help you target your mouse.

Logitech have now released one :
http://www.logitech.com/cf/products/productoverview.cfm/79?24


SS> Also, elsewhere he's said that mouse chords are a bad idea. 
SS> Possibly not the best source for a defense of Acme. :-)

hehe but they were convinced that a combination of mouse and keybard
were positive which does lend some weight to my idea of assigning
stuff to the function keys. Function keys are also present on the
world's keyboards (AFAIK). Making them programmable would be cool. In
fact if you made them a directory you could bind them in either
collectively or individually. Takes me back to my BBC Model B and is a
function I've missed in modern computers.



-- 
Best regards,
 Matt                            mailto:matt@proweb.co.uk




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

* Re: Re[4]: [9fans] home, end ^h^j^k^l
  2001-05-19 14:14   ` Re[4]: [9fans] home, end ^h^j^k^l rob pike
                       ` (5 preceding siblings ...)
  2001-05-20  7:03     ` Lucio De Re
@ 2001-05-20 11:16     ` paurea
  2001-05-20 13:11       ` Boyd Roberts
  2001-05-20 13:04     ` Boyd Roberts
  2001-05-23  8:24     ` Randolph Fritz
  8 siblings, 1 reply; 185+ messages in thread
From: paurea @ 2001-05-20 11:16 UTC (permalink / raw)
  To: 9fans

rob pike writes:
 > From: "rob pike" <rob@plan9.bell-labs.com>
 > Subject: Re: Re[4]: [9fans] home, end ^h^j^k^l
 > Date: Sat, 19 May 2001 10:14:25 -0400
 > 
 > 
 > This feels true but is false.  There were some fascinating experiments
 > done a few years ago in which people were given a long, tedious
 > editing task.  Some of the people were keyboard fans, some were mouse
 > fans.  Both folks were asked to do the task two ways, in random order,
 > once using the mouse to do the editing, once using cursor keys etc.
 > Regardless of their predilections, which was stated up front, after
 > the experiment everyone who did the task agreed that it was faster to
 > use the keyboard than the mouse to complete the task.  Everyone.
 > 
 > Here's the kicker: everyone was wrong.  They were being timed, and in
 > fact the reverse was true.  Although they thought the keyboard was
 > faster, doing the task using the mouse was faster for everyone, by a
 > substantial fraction.
 > 

I've read this argument before and conducted some experiments on my
own. I agree that it is faster to use the mouse than the arrow keys on
some cases.  When I am in emacs, for long jumps I use some other
method which is faster some times. I normally type C-s and search for
a word. (typing it repeatedly looks for the next match). My
conclusions are that, for local moves of two or more characters, the
C-p C-f (the emacs equivalents to arrow keys) are faster. For long,
like modifying two paragraphs at the start and the end of the text, ,
C-s is best, specially if you can't see where you are jumping (it is
one or two pages away).  For midrange jumps, moving to somewhere you
can see on the screen, specially if you are jumping here and there,
the mouse is much faster than any other thing, even more if you are
cutting and pasting things around.

Something else which is fast and I use a lot in emacs, is C-a and C-e,
to go to the starting and end of the line.

Taking the hands away from the letter keys, even to the arrows is time
consuming. More than the act of moving them, the time it takes to
accomodate them back on the keyboard to start typing again. Another
thing which takes time is the difficulty to be precise with the mouse
(this depends on the resolution the screen is at). On the other hand,
the cursor moves itself at a more or less constant rate and that makes
it slow too. It is also very distracting because you have to keep
your attention on it to stop it on time. 
-- 
                 Saludos,
                         Gorka

"Curiosity sKilled the cat"
-- 
    /"\
    \ /    ascii ribbon campaign - against html mail 
     X                           - against ms attachments
    / \













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

* Re[2]: [9fans] mouse vs key - nethack
  2001-05-20  8:09       ` Matt H
@ 2001-05-20 11:35         ` matt
  2001-05-20 13:13           ` Boyd Roberts
  2001-05-20 12:50         ` [9fans] mouse vs key Boyd Roberts
  1 sibling, 1 reply; 185+ messages in thread
From: matt @ 2001-05-20 11:35 UTC (permalink / raw)
  To: 9fans

Anyone tried playing nethack with a mouse?




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

* Re: [9fans] mouse vs key
  2001-05-20  8:09       ` Matt H
  2001-05-20 11:35         ` Re[2]: [9fans] mouse vs key - nethack matt
@ 2001-05-20 12:50         ` Boyd Roberts
  1 sibling, 0 replies; 185+ messages in thread
From: Boyd Roberts @ 2001-05-20 12:50 UTC (permalink / raw)
  To: 9fans

From: "Matt H" <matt@proweb.co.uk>
> 
> I've been looking forward to tactile feedback mice for this kind of
> reason. When them mouse crosses a window boundary for instance, it
> resists for a short time to help you target your mouse.
> 

iirc jim or a version of the window system that ran in the blit
used to have 'gravity' so that the cursor would 'stick' to the
scrollbar.  rob will correct me on this.

i'm not sure such features are a good thing.




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

* Re: Re[4]: [9fans] home, end ^h^j^k^l
  2001-05-19 14:14   ` Re[4]: [9fans] home, end ^h^j^k^l rob pike
                       ` (6 preceding siblings ...)
  2001-05-20 11:16     ` paurea
@ 2001-05-20 13:04     ` Boyd Roberts
  2001-05-23  8:24     ` Randolph Fritz
  8 siblings, 0 replies; 185+ messages in thread
From: Boyd Roberts @ 2001-05-20 13:04 UTC (permalink / raw)
  To: 9fans

> pc% ls -m ether*.c
> [sape]     --rw-rw-r-- M 2812 sape sys  2820 Apr 18 12:23 ether2000.c

put the muid after the gid or just before the mod time.

i think i prefer after the gid:

    - the 3rd name should be obvious, given the first 2 should be
      engraved on everyone's psyche

    - puting it near the mtime is probably bad, 'cos it's not
      always an mtime.




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

* Re: Re[4]: [9fans] home, end ^h^j^k^l
  2001-05-20 11:16     ` paurea
@ 2001-05-20 13:11       ` Boyd Roberts
  0 siblings, 0 replies; 185+ messages in thread
From: Boyd Roberts @ 2001-05-20 13:11 UTC (permalink / raw)
  To: 9fans

From: <paurea@dei.inf.uc3m.es>
> I've read this argument before and conducted some experiments on my
> own. I agree that it is faster to use the mouse than the arrow keys on
> some cases.  When I am in emacs, for long jumps I use some other
> method which is faster some times. I normally type C-s and search for
> a word. (typing it repeatedly looks for the next match).

any set of convoluted operations may be faster in a given circumstance.




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

* Re: Re[2]: [9fans] mouse vs key - nethack
  2001-05-20 11:35         ` Re[2]: [9fans] mouse vs key - nethack matt
@ 2001-05-20 13:13           ` Boyd Roberts
  0 siblings, 0 replies; 185+ messages in thread
From: Boyd Roberts @ 2001-05-20 13:13 UTC (permalink / raw)
  To: 9fans

> Anyone tried playing nethack with a mouse?

the death of civilisation as we know it...




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

* Re: Re[4]: [9fans] home, end ^h^j^k^l
  2001-05-19 14:14   ` Re[4]: [9fans] home, end ^h^j^k^l rob pike
                       ` (7 preceding siblings ...)
  2001-05-20 13:04     ` Boyd Roberts
@ 2001-05-23  8:24     ` Randolph Fritz
  2001-05-23  8:46       ` Re[6]: " Matt H
  8 siblings, 1 reply; 185+ messages in thread
From: Randolph Fritz @ 2001-05-23  8:24 UTC (permalink / raw)
  To: 9fans

In article <20010519141427.A5005199C1@mail.cse.psu.edu>, rob pike wrote:
> 
> Are we settling in?  Does everyone agree that ^C is copy and ^V is
> paste?
>

Windows and Mac do...or more precisely, Mac uses command-C and
command-V; windows uses control-C and control-V.  (And Microsoft
changed midstream; their original choices were amazingly hard to type
and remember.)

One change it seems that could be easily made is the use of the PgDn
key for the "view" key; it is *extremely* confusing to go back and
forth to other systems that ues the downarrow key as a cursor
positioning key

IIRC, the Mac key choices were originally made on the basis of ease of
gesture by Tognazzini.

> 
> If you don't believe me, the story is here:
> 	http://www.asktog.com/readerMail/1999-12ReaderMail.html
> Thanks to some forgotten 9fan who mentioned this a while back.
> 

That was me. :-)

> I didn't know about these experiments when I said, long ago, that
> using arrow keys to point at a display is like telling someone how to
> go somewhere by giving directions, while using a mouse is like
> pointing at a map.  In fact, I never used a screen editor until I had
> a mouse, for just this reason.
> 

The last time this came up I had an off-group discussion of this; I
think some of the comments I wrote on this are relevant here.

>
> I've become frustrated with the lack of even simple cursor keys in
> Plan 9--for going one or two characters cursor keys are faster than
> mouse clicks.  (I've measured it--point and click is worth about six
> keystrokes, assuming no think time.)  On the other hand, having
> extensive cursor keys tempts one to use only cursor keys, but tests
> consistently show that that method of editing is actually slower than
> using a mouse, despite seeming faster.
[...]  
> [Keyboard shortcuts are] an accessibility need, I'd think--not
> everyone can use a mouse, and the chording is going to be difficult
> for many people with hand disabilities [including me!], quite apart
> from the RSI risks.
>
> In my personal opinion, the two-handed model of using the mouse for
> pointing, and doing operations like cut, copy, and paste from the
> keyboard has much to recommend it for users of typical physical
> ability.

Since we are discussing UI again, let me put in a plea for user
testing.  I don't even know how *I'll* respond to a new UI unless I
work with a prototype.  Arguing about UI without testing is a
high-entropy (high heat, low light) activity :-)

I have come to believe that both Unix and the Macintosh owe much of
their success to user testing, with very different groups of users.

Randolph

A few web essays on user testing, to start with.

http://www.asktog.com/columns/001closecoupledtesting.html
http://www.asktog.com/columns/037TestOrElse.html
http://www.useit.com/alertbox/20000319.html
http://www.useit.com/alertbox/20010204.html


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

* Re[6]: [9fans] home, end ^h^j^k^l
  2001-05-23  8:24     ` Randolph Fritz
@ 2001-05-23  8:46       ` Matt H
  2001-05-23  9:04         ` Boyd Roberts
  0 siblings, 1 reply; 185+ messages in thread
From: Matt H @ 2001-05-23  8:46 UTC (permalink / raw)
  To: Randolph Fritz

Hello Randolph,

Wednesday, May 23, 2001, 9:24:54 AM, you wrote:

RF> In article <20010519141427.A5005199C1@mail.cse.psu.edu>, rob pike wrote:
>> 
>> Are we settling in?  Does everyone agree that ^C is copy and ^V is
>> paste?
>>

RF> Windows and Mac do...or more precisely, Mac uses command-C and
RF> command-V; windows uses control-C and control-V.  (And Microsoft
RF> changed midstream; their original choices were amazingly hard to type
RF> and remember.)

I still find myself using Shift-Delete for cut, Shift-Insert for copy
and Shift-Insert for paste

I believe ^c ^v & ^x were taken from an IBM UI guide but someone else
might correct me.

-- 
Best regards,
 Matt                            mailto:matt@proweb.co.uk




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

* Re: Re[6]: [9fans] home, end ^h^j^k^l
  2001-05-23  8:46       ` Re[6]: " Matt H
@ 2001-05-23  9:04         ` Boyd Roberts
  0 siblings, 0 replies; 185+ messages in thread
From: Boyd Roberts @ 2001-05-23  9:04 UTC (permalink / raw)
  To: 9fans

i'm suprised this subject hasn't degenerated into a total flamefest.

i think have things like ^c and ^v for copy and paste operations
are definitive proof that the UI is broken.  if it was easy to do
with the mouse why would you have such 'keyboard accelerators'?

i use them, but that's because it's easier than the various turgid
mouse driven GUIs and with a two button trackpad it's easier than
ctrl/tab + right button.  all these are indications of broken
interfaces or limited technology (ie. 2 button mice).

look around.  the 3 button mouse is nearly dead.  the closest seems
to be those horrible 2 1/2 button + wheel things -- ugh.

even with all that code that runs the trackpad i can't get it
to give me a middle button.  well i could [left+right], but then
i run out of fingers with which to select.




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

* Re: [9fans] src vs db
@ 2001-05-29  4:27   ` rob pike
  2001-05-29  4:37     ` Scott Schwartz
  0 siblings, 1 reply; 185+ messages in thread
From: rob pike @ 2001-05-29  4:27 UTC (permalink / raw)
  To: 9fans

> Is src still out of sync with db?  I think I've installed
> all the updates, but my db is printing the "name = 386"
> that src doesn't expect.

That was a debugging print that was left in by mistake a long
time ago.  I believe the binary in the last full distribution
doesn't have the print.  Have you tried recompiling libmach
and db?

-rob



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

* Re: [9fans] src vs db
  2001-05-29  4:27   ` [9fans] src vs db rob pike
@ 2001-05-29  4:37     ` Scott Schwartz
  0 siblings, 0 replies; 185+ messages in thread
From: Scott Schwartz @ 2001-05-29  4:37 UTC (permalink / raw)
  To: 9fans

| That was a debugging print that was left in by mistake a long
| time ago.  I believe the binary in the last full distribution
| doesn't have the print.

I just installed that, which is why I was surprised to see it.

| Have you tried recompiling libmach and db?

Not yet.



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

* Re: [9fans] could those of you who have students check this out for
@ 2001-06-09 17:22 forsyth
  2001-06-09 18:50 ` [9fans] Re: the 'science' in computer science andrey mirtchovski
  0 siblings, 1 reply; 185+ messages in thread
From: forsyth @ 2001-06-09 17:22 UTC (permalink / raw)
  To: 9fans

>>our computer science department has strong roots in algorithmics.

that might be true, but do the students, in the main, write programs
except those they are required to do for assessments and projects?



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

* Re: [9fans] Re: the 'science' in computer science
  2001-06-09 18:50 ` [9fans] Re: the 'science' in computer science andrey mirtchovski
@ 2001-06-09 17:56   ` Boyd Roberts
  2001-06-11  8:27     ` pac
  2001-06-11 15:19     ` Dan Cross
  2001-06-12  0:09   ` Scott Merrilees
                     ` (2 subsequent siblings)
  3 siblings, 2 replies; 185+ messages in thread
From: Boyd Roberts @ 2001-06-09 17:56 UTC (permalink / raw)
  To: 9fans

i don't think i'd go so far to call it a science -- more like an art.




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

* [9fans] Re: the 'science' in computer science
  2001-06-09 17:22 [9fans] could those of you who have students check this out for forsyth
@ 2001-06-09 18:50 ` andrey mirtchovski
  2001-06-09 17:56   ` Boyd Roberts
                     ` (3 more replies)
  0 siblings, 4 replies; 185+ messages in thread
From: andrey mirtchovski @ 2001-06-09 18:50 UTC (permalink / raw)
  To: 9fans

unfortunately dan cross is very right in his analysis -- most of the
students care not for algorithmics. the three classes i listed are the most
hated ones (together with the "Systems Programming and Introduction to
Operating Systems", the UNIX class) simply because they actually make the
students think...

there are the occasional bad apples who explore the field, write code
and are interested in the 'science' part of 'computer science'.. the others
are happy to get their 3 year degrees and drone off to the job market.

andrey



On Sat, 9 Jun 2001 forsyth@caldo.demon.co.uk wrote:

> >>our computer science department has strong roots in algorithmics.
> 
> that might be true, but do the students, in the main, write programs
> except those they are required to do for assessments and projects?
> 
> 



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

* Re: [9fans] string to list?
@ 2001-06-10 17:32 ` vikki
  2001-06-10 17:47   ` Boyd Roberts
                     ` (2 more replies)
  0 siblings, 3 replies; 185+ messages in thread
From: vikki @ 2001-06-10 17:32 UTC (permalink / raw)
  To: 9fans



>rc irc client? sounds reasonable :)
>i wish i could find my 80-line C irc client i wrote last year for p9 (it
was
>my first project :).. come to think of it though, rc is a much better idea
>and a funnier one to implement :) wish i had a working p9 installation, i
>could've helped!

We're having a bit of a competition at work. They've got their monolithic
perl bot running. I'm trying to impress them with the plan9 version as a
learning exercise. I plan to have it do eval `{$msg} and do whatever it's
namespace will let it. They keep adding code to the perl bot and getting
deeper and deeper. Already they've had to split it in half (on my suggestion
:-) to separate information gathering and display.

>how about awk? daemonize an awk program if RC does not five you the
>utility to do it :)

 yeah that's a good idea. I didn't fancy spawning awk for every line of irc.

I did wonder one day why plan9 has any command line utilities at all apart
from bind, mount, import, unmount , cd, echo and cat.






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

* Re: [9fans] string to list?
  2001-06-10 17:32 ` [9fans] string to list? vikki
@ 2001-06-10 17:47   ` Boyd Roberts
  2001-06-10 17:55   ` Boyd Roberts
  2001-06-10 18:03   ` Scott Schwartz
  2 siblings, 0 replies; 185+ messages in thread
From: Boyd Roberts @ 2001-06-10 17:47 UTC (permalink / raw)
  To: 9fans

> They've got their monolithic perl bot running.

that's kinda funny, in a 'finally got it to run' sense.




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

* Re: [9fans] string to list?
  2001-06-10 17:32 ` [9fans] string to list? vikki
  2001-06-10 17:47   ` Boyd Roberts
@ 2001-06-10 17:55   ` Boyd Roberts
  2001-06-10 18:03   ` Scott Schwartz
  2 siblings, 0 replies; 185+ messages in thread
From: Boyd Roberts @ 2001-06-10 17:55 UTC (permalink / raw)
  To: 9fans

>  yeah that's a good idea. I didn't fancy spawning awk for every line of irc.

how about gross ifs/fn/`{...} trickery?




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

* Re: [9fans] string to list?
  2001-06-10 17:32 ` [9fans] string to list? vikki
  2001-06-10 17:47   ` Boyd Roberts
  2001-06-10 17:55   ` Boyd Roberts
@ 2001-06-10 18:03   ` Scott Schwartz
  2001-06-10 21:48     ` Matt
  2 siblings, 1 reply; 185+ messages in thread
From: Scott Schwartz @ 2001-06-10 18:03 UTC (permalink / raw)
  To: 9fans

| I plan to have it do eval `{$msg} and do whatever it's
| namespace will let it.

I really wouldn't do that.  It's just too unpredictable and dangerous.
eval considered harmful.

cmd=`{echo $msg}
if (fgrep -f okcmdlist $cmd(1)) {
	$cmd
} 



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

* Re: [9fans] string to list?
  2001-06-10 18:03   ` Scott Schwartz
@ 2001-06-10 21:48     ` Matt
  2001-06-10 22:24       ` Scott Schwartz
  0 siblings, 1 reply; 185+ messages in thread
From: Matt @ 2001-06-10 21:48 UTC (permalink / raw)
  To: 9fans


----- Original Message -----
From: "Scott Schwartz" <schwartz@bio.cse.psu.edu>


> | I plan to have it do eval `{$msg} and do whatever it's
> | namespace will let it.
>
> I really wouldn't do that.  It's just too unpredictable and dangerous.
> eval considered harmful.

being as I've not implemented it my understanding is weak but I thought that
I could dictate the namespace that a process sees. If the total namespace
the ircbot process sees is

/
/bin/opme
/bin/cat
/bin/ls
/bin/eval
/bin/echo
/slashdotheadlines

then all ircbot can do is  combinations like
echo eval 'ls /bin'
echo eval 'opme'
echo eval 'cat /slashdotheadlines'

but because it can't bind new files in or import them it can't manipulate
it's namespace via the eval









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

* Re: [9fans] string to list?
  2001-06-10 21:48     ` Matt
@ 2001-06-10 22:24       ` Scott Schwartz
  2001-06-10 22:30         ` Boyd Roberts
  0 siblings, 1 reply; 185+ messages in thread
From: Scott Schwartz @ 2001-06-10 22:24 UTC (permalink / raw)
  To: 9fans

| ...I thought that I could dictate the namespace that a process sees.

Yes, unless you someone makes a mistake.  But there's more to it
than that.  eval gives the bad guys unrestricted access to the shell,
which you probably don't want.



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

* Re: [9fans] string to list?
  2001-06-10 22:24       ` Scott Schwartz
@ 2001-06-10 22:30         ` Boyd Roberts
  0 siblings, 0 replies; 185+ messages in thread
From: Boyd Roberts @ 2001-06-10 22:30 UTC (permalink / raw)
  To: 9fans

> which you probably don't want.

s/probably/definitely/




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

* Re: [9fans] Re: the 'science' in computer science
  2001-06-09 17:56   ` Boyd Roberts
@ 2001-06-11  8:27     ` pac
  2001-06-11 15:19     ` Dan Cross
  1 sibling, 0 replies; 185+ messages in thread
From: pac @ 2001-06-11  8:27 UTC (permalink / raw)
  To: 9fans

IMHO, CS is to mathematics, as medicine is to biology; personally, I call them both "technology" :-(
Peter


--
Peter A. Cejchan
Dept. Paleobiology, Inst. Geology Acad. Sci.,
Rozvojova 135, Prague 6
CZ-16502 Czech Republic
<cej@cejchan.gli.cas.cz>

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
A plea:
Please, consider your support to the Public Library of Science initiative at
http://www.publiclibraryofscience.org

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~



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

* Re: [9fans] Re: the 'science' in computer science
  2001-06-09 17:56   ` Boyd Roberts
  2001-06-11  8:27     ` pac
@ 2001-06-11 15:19     ` Dan Cross
  2001-06-11 21:43       ` Boyd Roberts
       [not found]       ` <0cb501c0f2bf$97cacea0$e8b7c6d4@SOMA>
  1 sibling, 2 replies; 185+ messages in thread
From: Dan Cross @ 2001-06-11 15:19 UTC (permalink / raw)
  To: 9fans

In article <041601c0f10d$72dabaa0$e8b7c6d4@SOMA> you write:
>i don't think i'd go so far to call it a science -- more like an art.

Okay, this is getting way off topic for 9fans, but, let me ask
this: at the real abstract, pure level, is science any different
at all from art?  I contend that they're one and the same.

	- Dan C.



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

* Re: [9fans] Re: the 'science' in computer science
  2001-06-11 15:19     ` Dan Cross
@ 2001-06-11 21:43       ` Boyd Roberts
       [not found]       ` <0cb501c0f2bf$97cacea0$e8b7c6d4@SOMA>
  1 sibling, 0 replies; 185+ messages in thread
From: Boyd Roberts @ 2001-06-11 21:43 UTC (permalink / raw)
  To: 9fans

From: "Dan Cross" <cross@math.psu.edu>
> Okay, this is getting way off topic for 9fans, but, let me ask
> this: at the real abstract, pure level, is science any different
> at all from art?  I contend that they're one and the same.

nonsense.  physics is a science.  i can predict things with it.

does computer science predict anything for me?  i'll give you that
it does have an axiom that states:

    you will be plagued by bugs in any development effort

but that doesn't really predict anything in anything that vaguely
approaches a _law_ of physics -- pick one.  eg.  the prohibition
of speeds greater than the of speed of light.

comp sci is more like an engineering discipline with very few
fundamentals.




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

* Re: [9fans] Re: the 'science' in computer science
       [not found]       ` <0cb501c0f2bf$97cacea0$e8b7c6d4@SOMA>
@ 2001-06-11 22:43         ` paurea
  2001-06-12 14:18           ` Dan Cross
  0 siblings, 1 reply; 185+ messages in thread
From: paurea @ 2001-06-11 22:43 UTC (permalink / raw)
  To: 9fans

Boyd Roberts writes:
 > From: "Boyd Roberts" <boyd@fr.inter.net>
 > Subject: Re: [9fans] Re: the 'science' in computer science
 > Date: Mon, 11 Jun 2001 23:43:45 +0200
 > 
 > From: "Dan Cross" <cross@math.psu.edu>
 > > Okay, this is getting way off topic for 9fans, but, let me ask
 > > this: at the real abstract, pure level, is science any different
 > > at all from art?  I contend that they're one and the same.
 > 
 > nonsense.  physics is a science.  i can predict things with it.
 > 
 > does computer science predict anything for me?  i'll give you that
 > it does have an axiom that states:
 > 
 >     you will be plagued by bugs in any development effort
 > 
 > but that doesn't really predict anything in anything that vaguely
 > approaches a _law_ of physics -- pick one.  eg.  the prohibition
 > of speeds greater than the of speed of light.
 > 
 > comp sci is more like an engineering discipline with very few
 > fundamentals.

¿Would you say Math is a science?.
Its theoretical foundations are based on turing machines...
(I believe all physics are written in math simbols...)
-- 
                 Saludos,
                         Gorka

"Curiosity sKilled the cat"
-- 
    /"\
    \ /    ascii ribbon campaign - against html mail 
     X                           - against ms attachments
    / \



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

* Re: [9fans] Re: the 'science' in computer science
  2001-06-09 18:50 ` [9fans] Re: the 'science' in computer science andrey mirtchovski
  2001-06-09 17:56   ` Boyd Roberts
@ 2001-06-12  0:09   ` Scott Merrilees
  2001-06-12  0:16     ` Boyd Roberts
       [not found]   ` <0cc301c0f2c0$78949560$e8b7c6d4@SOMA>
  2001-06-16 23:34   ` Matt
  3 siblings, 1 reply; 185+ messages in thread
From: Scott Merrilees @ 2001-06-12  0:09 UTC (permalink / raw)
  To: 9fans

>unfortunately dan cross is very right in his analysis -- most of the
>students care not for algorithmics. the three classes i listed are the most
>hated ones (together with the "Systems Programming and Introduction to
>Operating Systems", the UNIX class) simply because they actually make the
>students think...
>
>there are the occasional bad apples who explore the field, write code
>and are interested in the 'science' part of 'computer science'.. the others
>are happy to get their 3 year degrees and drone off to the job market.
>
>andrey

Then you have the occasional CS dept / Computer Centre with a computer
usage policy that probihits all use of the univerity computer systems
except for specific course work.

Sm


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

* Re: [9fans] Re: the 'science' in computer science
  2001-06-12  0:09   ` Scott Merrilees
@ 2001-06-12  0:16     ` Boyd Roberts
  2001-06-12  0:42       ` Scott Merrilees
  0 siblings, 1 reply; 185+ messages in thread
From: Boyd Roberts @ 2001-06-12  0:16 UTC (permalink / raw)
  To: 9fans

> Then you have the occasional CS dept / Computer Centre with a computer
> usage policy that probihits all use of the univerity computer systems
> except for specific course work.

yeah, but some of us got around that and the more you got around
it the more you learned -- the useful stuff.




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

* [9fans] help, i'm in a wet paper bag and I can't get out
@ 2001-06-12  0:39 ` Matt
  2001-06-12  0:55   ` Scott Schwartz
  2001-06-12  1:00   ` Boyd Roberts
  0 siblings, 2 replies; 185+ messages in thread
From: Matt @ 2001-06-12  0:39 UTC (permalink / raw)
  To: 9fans

Well it's not going too well.

I got this far but of course (I can say that now) 
the `{..} doesn't return until $netdir/data sends an eof
and then prints each line

ifs='
'
for (k in `{ cat $netdir/data }) {
    echo $k 
} 


so how do i read a line at a time before `{..} closes it's stdout?

once I've cracked that it's just about finished

M



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

* Re: [9fans] Re: the 'science' in computer science
  2001-06-12  0:16     ` Boyd Roberts
@ 2001-06-12  0:42       ` Scott Merrilees
  2001-06-12  1:08         ` Boyd Roberts
  0 siblings, 1 reply; 185+ messages in thread
From: Scott Merrilees @ 2001-06-12  0:42 UTC (permalink / raw)
  To: 9fans

>> Then you have the occasional CS dept / Computer Centre with a computer
>> usage policy that probihits all use of the univerity computer systems
>> except for specific course work.

>boyd:
>yeah, but some of us got around that and the more you got around
>it the more you learned -- the useful stuff.

Very true, but the above CS attitude encourages the production of
drones, while discouraging and even punishing those with the audacity
to try and do some self directed learning.

Sm


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

* Re: [9fans] help, i'm in a wet paper bag and I can't get out
  2001-06-12  0:39 ` [9fans] help, i'm in a wet paper bag and I can't get out Matt
@ 2001-06-12  0:55   ` Scott Schwartz
  2001-06-12  1:12     ` Boyd Roberts
  2001-06-12  1:00   ` Boyd Roberts
  1 sibling, 1 reply; 185+ messages in thread
From: Scott Schwartz @ 2001-06-12  0:55 UTC (permalink / raw)
  To: 9fans

| I got this far but of course (I can say that now) 
| the `{..} doesn't return until $netdir/data sends an eof
| and then prints each line

Instead of "for cat", don't you want "while read"?


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

* Re: [9fans] help, i'm in a wet paper bag and I can't get out
  2001-06-12  0:39 ` [9fans] help, i'm in a wet paper bag and I can't get out Matt
  2001-06-12  0:55   ` Scott Schwartz
@ 2001-06-12  1:00   ` Boyd Roberts
  2001-06-12  1:30     ` Jonathan Sergent
  2001-06-15  8:27     ` Hermann Samso
  1 sibling, 2 replies; 185+ messages in thread
From: Boyd Roberts @ 2001-06-12  1:00 UTC (permalink / raw)
  To: 9fans

> I got this far but of course (I can say that now) 
> the `{..} doesn't return until $netdir/data sends an eof
> and then prints each line

well, obviously.  it's a file isn't it? <smirk>

> so how do i read a line at a time before `{..} closes it's stdout?

write some C program that that reads _unbuffered_ characters
and spits them until it sees 'end of line' (whatever that may be).
you should buffer the output, but _not_ the input.

can't be more than 20 lines of code.

btw: i hope you're dealing with 8 bit chars 'cos latin-1 will
     really screw up utf encoded streams that the rest of the
     system expects.  years ago i wrote (on ultrix) riso [rune
     to iso-latin-1] and isor (pronounced eye-sore) filters
     so that the unix sam could deal with the few french docs
     i had to deal with.




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

* Re: [9fans] Re: the 'science' in computer science
  2001-06-12  0:42       ` Scott Merrilees
@ 2001-06-12  1:08         ` Boyd Roberts
  0 siblings, 0 replies; 185+ messages in thread
From: Boyd Roberts @ 2001-06-12  1:08 UTC (permalink / raw)
  To: 9fans

> Very true, but the above CS attitude encourages the production of
> drones, while discouraging and even punishing those with the audacity
> to try and do some self directed learning.

i don't disagree, but when you had 2000 students and one 11/780 for
all of them (even with share/hacks giving you a maximum of 128
simultaneous student logins) i guess something had to be done.
more resources would have been nice.

on the other hand, it was always a nice clause to use on password
crackers and others nuisances.




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

* Re: [9fans] help, i'm in a wet paper bag and I can't get out
  2001-06-12  0:55   ` Scott Schwartz
@ 2001-06-12  1:12     ` Boyd Roberts
  0 siblings, 0 replies; 185+ messages in thread
From: Boyd Roberts @ 2001-06-12  1:12 UTC (permalink / raw)
  To: 9fans

> Instead of "for cat", don't you want "while read"?

well he does, but rc doesn't have 'read'.




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

* Re: [9fans] help, i'm in a wet paper bag and I can't get out
  2001-06-12  1:00   ` Boyd Roberts
@ 2001-06-12  1:30     ` Jonathan Sergent
  2001-06-15  8:27     ` Hermann Samso
  1 sibling, 0 replies; 185+ messages in thread
From: Jonathan Sergent @ 2001-06-12  1:30 UTC (permalink / raw)
  To: 9fans


On Monday, June 11, 2001, at 06:00 PM, Boyd Roberts wrote:

> write some C program that that reads _unbuffered_ characters
> and spits them until it sees 'end of line' (whatever that may be).
> you should buffer the output, but _not_ the input.

You could just read the manual and use /bin/read, instead of rewriting 
it.

So you get

{
	while () {
		line=`{read}
		echo line: $line
	}
} < filename

Somehow putting the < filename after the inner } makes rc reopen it for 
each loop iteration.  (Am I misinterpreting this?)

A more convoluted way to do to the same thing would be

{ echo 0 > /srv/something.$pid } < filename
while () {
	line=`{read /srv/something.$pid}
	echo line: $line
}
rm /srv/something.$pid

but that's probably better for showing off /srv to your friends than it 
is for actually solving the problem.


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

* Re: [9fans] Re: the 'science' in computer science
       [not found]   ` <0cc301c0f2c0$78949560$e8b7c6d4@SOMA>
@ 2001-06-12 14:12     ` Dan Cross
  0 siblings, 0 replies; 185+ messages in thread
From: Dan Cross @ 2001-06-12 14:12 UTC (permalink / raw)
  To: 9fans

In article <0cc301c0f2c0$78949560$e8b7c6d4@SOMA> you write:
>nonsense.  physics is a science.  i can predict things with it.

I can predict things with computer science as well: the average
and worst-case running times of an algorithm, for instance, or
the amount of memory used by activation records in a recursive
algorithm.

>does computer science predict anything for me?  i'll give you that
>it does have an axiom that states:
>
>    you will be plagued by bugs in any development effort

This is a software engineering maxim.  Speaking of which....  There
are ``laws'' of software engineering that are kind of like laws of
physics.  Add more programmers to a late project, and it gets later;
etc.

>but that doesn't really predict anything in anything that vaguely
>approaches a _law_ of physics -- pick one.  eg.  the prohibition
>of speeds greater than the of speed of light.

The Church-Turing thesis; NP-complete problems; the halting problem,
just to name a few.

>comp sci is more like an engineering discipline with very few
>fundamentals.

Maybe, but that wasn't even my point.

	- Dan C.



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

* Re: [9fans] Re: the 'science' in computer science
  2001-06-11 22:43         ` paurea
@ 2001-06-12 14:18           ` Dan Cross
  2001-06-12 15:50             ` Boyd Roberts
  0 siblings, 1 reply; 185+ messages in thread
From: Dan Cross @ 2001-06-12 14:18 UTC (permalink / raw)
  To: 9fans

In article <15141.18819.7956.967025@nido.hilbert.space> you write:
>Would you say Math is a science?.
>Its theoretical foundations are based on turing machines...

Woah, they are?  Mathematics, and many of its theoretical foundations,
existed for a really long time before Alan Turing was born....

>(I believe all physics are written in math simbols...)

Basically, but each discipline seems to invent its own psuedo-
mathematical notation.  Not necessarily a bad thing, but it can
get really confusing (cf. i in mathematics vs. j in engineering).

	- Dan C.



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

* Re: [9fans] Re: the 'science' in computer science
  2001-06-12 14:18           ` Dan Cross
@ 2001-06-12 15:50             ` Boyd Roberts
  2001-06-12 18:48               ` Dan Cross
  0 siblings, 1 reply; 185+ messages in thread
From: Boyd Roberts @ 2001-06-12 15:50 UTC (permalink / raw)
  To: 9fans

> >(I believe all physics are written in math simbols...)

i think i'll have to take feynman's stance:

    physics is to math what sex is to ...

i just can't get a good reference for this 1999? quote.




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

* Re: [9fans] Re: the 'science' in computer science
  2001-06-12 15:50             ` Boyd Roberts
@ 2001-06-12 18:48               ` Dan Cross
  0 siblings, 0 replies; 185+ messages in thread
From: Dan Cross @ 2001-06-12 18:48 UTC (permalink / raw)
  To: 9fans

In article <10df01c0f357$6fff23b0$e8b7c6d4@SOMA> you write:
>i think i'll have to take feynman's stance:
>
>    physics is to math what sex is to ...
>
>i just can't get a good reference for this 1999? quote.

Feynman was dead in 1999.

	- Dan C.



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

* Re: [9fans] help, i'm in a wet paper bag and I can't get out
  2001-06-12  1:00   ` Boyd Roberts
  2001-06-12  1:30     ` Jonathan Sergent
@ 2001-06-15  8:27     ` Hermann Samso
  2001-06-15 11:53       ` Boyd Roberts
  1 sibling, 1 reply; 185+ messages in thread
From: Hermann Samso @ 2001-06-15  8:27 UTC (permalink / raw)
  To: 9fans

Boyd Roberts <boyd@fr.inter.net> wrote:
>> I got this far but of course (I can say that now) 
>> the `{..} doesn't return until $netdir/data sends an eof
>> and then prints each line

> well, obviously.  it's a file isn't it? <smirk>

>> so how do i read a line at a time before `{..} closes it's stdout?

> write some C program that that reads _unbuffered_ characters
> and spits them until it sees 'end of line' (whatever that may be).
> you should buffer the output, but _not_ the input.

> can't be more than 20 lines of code.

> btw: i hope you're dealing with 8 bit chars 'cos latin-1 will
>      really screw up utf encoded streams that the rest of the
>      system expects.  years ago i wrote (on ultrix) riso [rune
>      to iso-latin-1] and isor (pronounced eye-sore) filters
>      so that the unix sam could deal with the few french docs
>      i had to deal with.

	With so many snippets of code, everyone could make use
	of, isn't there any common repository? Or will they
	allget integrated in time for next release?
	Ok, there is always Deja News, but...

	saludos,
		hermann samso


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

* Re: [9fans] help, i'm in a wet paper bag and I can't get out
  2001-06-15  8:27     ` Hermann Samso
@ 2001-06-15 11:53       ` Boyd Roberts
  2001-06-15 12:18         ` Matt
  2001-06-15 14:01         ` Matt
  0 siblings, 2 replies; 185+ messages in thread
From: Boyd Roberts @ 2001-06-15 11:53 UTC (permalink / raw)
  To: 9fans

From: "Hermann Samso" <samso@studserv.stud.uni-hannover.de>
> With so many snippets of code, everyone could make use
> of, isn't there any common repository? Or will they
> allget integrated in time for next release?
> Ok, there is always Deja News, but...

oh, but there is.  you must have missed the 'why don't
we build a common repository' thread.  i finally cracked
(in desperation) and did this:

    http://mapage.noos.fr/~repo

but about the only thing it's done is to a) proove a
point and b) receive mail of the form 'nice page.

the first cut was done by hand, the second is automated
with a mash-mk mashfile on inferno.

the bitsy code should probably go back to 1127.
i don't mind adding it too.

matt's rc irc bot could be added if he so wishes.




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

* Re: [9fans] help, i'm in a wet paper bag and I can't get out
  2001-06-15 11:53       ` Boyd Roberts
@ 2001-06-15 12:18         ` Matt
  2001-06-15 14:01         ` Matt
  1 sibling, 0 replies; 185+ messages in thread
From: Matt @ 2001-06-15 12:18 UTC (permalink / raw)
  To: 9fans


----- Original Message ----- 
From: "Boyd Roberts" <boyd@fr.inter.net>
To: <9fans@cse.psu.edu>
Sent: Friday, June 15, 2001 12:53 PM
Subject: Re: [9fans] help, i'm in a wet paper bag and I can't get out


> From: "Hermann Samso" <samso@studserv.stud.uni-hannover.de>
> > With so many snippets of code, everyone could make use
> > of, isn't there any common repository? Or will they
> > allget integrated in time for next release?
> > Ok, there is always Deja News, but...
> 
> oh, but there is.  you must have missed the 'why don't
> we build a common repository' thread.  i finally cracked
> (in desperation) and did this:
> 
>     http://mapage.noos.fr/~repo
> 
> but about the only thing it's done is to a) proove a
> point and b) receive mail of the form 'nice page.
> 
> the first cut was done by hand, the second is automated
> with a mash-mk mashfile on inferno.
> 
> the bitsy code should probably go back to 1127.
> i don't mind adding it too.
> 
> matt's rc irc bot could be added if he so wishes.
> 
> 
> 



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

* Re: [9fans] help, i'm in a wet paper bag and I can't get out
  2001-06-15 11:53       ` Boyd Roberts
  2001-06-15 12:18         ` Matt
@ 2001-06-15 14:01         ` Matt
  2001-06-15 14:25           ` Boyd Roberts
  1 sibling, 1 reply; 185+ messages in thread
From: Matt @ 2001-06-15 14:01 UTC (permalink / raw)
  To: 9fans

bugger, sorry


>but about the only thing it's done is to a) proove a
>point and b) receive mail of the form 'nice page.
no news is good news?



>matt's rc irc bot could be added if he so wishes

A basic irc bot that evals commands it's given with
the permission & namespace of whoever started it.
http://www.proweb.co.uk/~matt/chugly.rc





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

* Re: [9fans] help, i'm in a wet paper bag and I can't get out
  2001-06-15 14:01         ` Matt
@ 2001-06-15 14:25           ` Boyd Roberts
  0 siblings, 0 replies; 185+ messages in thread
From: Boyd Roberts @ 2001-06-15 14:25 UTC (permalink / raw)
  To: 9fans

> no news is good news?

well, it's better than being the middle of a firefight...
err, flamewar.

> A basic irc bot that evals commands it's given with
> the permission & namespace of whoever started it.
> http://www.proweb.co.uk/~matt/chugly.rc

ok, will do.

i got it down to this as a mashfile:

for (i in contrib/*)
contrib.html : $i/li.html;

*/*/li.html :~ $1/$2/url { mash tools/c2li $1/$2 > $0 };
*/*/url :~ $1/$2/desc {};
*/*/desc :~ $1/$2/from {};
*/*/from :~ $1/$2/date {};

*.html :~ $1/0/url { cat $1/*/li.html > $0 };

default: index.html {};

index.html : head.html contrib.html tail.html { cat head.html contrib.html tail.html > index.html };

----

the contrib directory has directories, named 0...n, which have these files:

     url
     desc [description]
     from
     date [rfc822/std11 date.  it's well known and can be parsed]
     li.html [this is the html <li> made out of the above files]

brucee gave me a bit of a hand, 'cos mash-mk is not mk or make.
i think he has a much better and simpler solution to the problem.




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

* Re: [9fans] Re: the 'science' in computer science
  2001-06-09 18:50 ` [9fans] Re: the 'science' in computer science andrey mirtchovski
                     ` (2 preceding siblings ...)
       [not found]   ` <0cc301c0f2c0$78949560$e8b7c6d4@SOMA>
@ 2001-06-16 23:34   ` Matt
  2001-06-28 21:29     ` Boyd Roberts
  3 siblings, 1 reply; 185+ messages in thread
From: Matt @ 2001-06-16 23:34 UTC (permalink / raw)
  To: 9fans

My friend is on his third year (of 4) of his Computer Science Degree.
I know they've covered Assembler, Java, C++ and Databases.

I mentioned to him that Dennis Ritchie posted to 9fans thinking he might be
interested.

"Who?"

I didn't bother saying
"Those who do not understand Unix are doomed to reinvent it - poorly..."




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

* [9fans] bitsy question
@ 2001-06-26 16:33 John Packer
  2001-06-26 17:10 ` [9fans] " Dan Cross
  0 siblings, 1 reply; 185+ messages in thread
From: John Packer @ 2001-06-26 16:33 UTC (permalink / raw)
  To: 9fans

I have Plan9 installed on my ipaq, but I don't have a pcmcia sleeve,
or wavelan on my network.

So I have been trying to link the bitsy to my terminal using ppp over
the 
serial port. (I made a ramdisk with ip/ppp).

PPP tries to authenticate for 30 seconds (through chap, I think) then
times out.


I've tried running ppp a few different ways, but something like
	
	ip/ppp -df -b 115200 -p /dev/eia0 -s $user:$secret 135.104.99.5

on the bitsy and something like
	
	ip/ppp -dfS -b 115200 -p /dev/eia0 135.104.99.1

on the server.

Has anyone tried this? What am I doing wrong?

Thanks, 

John


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

* [9fans] Re: bitsy question
  2001-06-26 16:33 [9fans] bitsy question John Packer
@ 2001-06-26 17:10 ` Dan Cross
  2001-06-26 19:51   ` John Packer
                     ` (2 more replies)
  0 siblings, 3 replies; 185+ messages in thread
From: Dan Cross @ 2001-06-26 17:10 UTC (permalink / raw)
  To: packer; +Cc: 9fans

In article <3B38BA06.E55B62AC@bway.net> you write:
>I have Plan9 installed on my ipaq, but I don't have a pcmcia sleeve,
>or wavelan on my network.

Ouch; that makes it much more difficult to use, as you have discovered.

>So I have been trying to link the bitsy to my terminal using ppp over
>the serial port. (I made a ramdisk with ip/ppp).
>
>PPP tries to authenticate for 30 seconds (through chap, I think) then
>times out.
>
>I've tried running ppp a few different ways, but something like
>	
>	ip/ppp -df -b 115200 -p /dev/eia0 -s $user:$secret 135.104.99.5
>
>on the bitsy and something like
>	
>	ip/ppp -dfS -b 115200 -p /dev/eia0 135.104.99.1
>
>on the server.
>
>Has anyone tried this? What am I doing wrong?

Well, at least one thing that you're probably encountering is that the
bitsy tries to use the serial port as a console device, and is
hardwired in the kernel to do so.  In order to fix that, you have to
edit the kernel sources in /sys/src/9/bitsy/ and recompile; I managed
to turn it off by changing the argument to sa1110_uartsetup() to zero
in main.c.  However, if you do ONLY that, the machine panics when it
comes up because the keyboard input queue for the console device is
nil.  Whoops!  You have to change sa1110_uartsetup() in sa1110uart.c
(the last routine in the file) to assign a valid Queue pointer to
kbdq.  I just changed the relevant section to be:

	if(console) {
		uartspecial(p, 115200, &kbdq, &printq, kbdcr2nl);
	} else {
		kbdq = qopen(4*1024, 0, 0, 0);
	}

That is, adding the ``else'' clause which calls qopen.  I'm not sure
that this is the best method; if there's a better one, I'd be
interested to know.

btw- the serial console mode can be really handy at times; it's nice to
be able to put the bitsy on it's cradle, start up con, and then type
into bitsy windows without using bitsy/keyboard.  The hand becomes much
less cramped.

Anyway, I'm assuming this is something you haven't messed with yet;
it'd most definately mess with ip/ppp, since every other character gets
redirected to /dev/cons!

Another problem you may have is that the bitsy uart driver doesn't
really do modem control; actually, it might be more accurate to say
that the StrongARM SA1100 doesn't do modem control signaling directly.
Instead, it simulates it using the GPIO pins on the 1100.  I'm not sure
what exactly, if anything, the bitsy does differently in this regard
(the driver has a comment about the RTS/CTS stuff being h3600 specific,
but nothing more); my attempts to add DTR and RTS/CTS modem control to
the serial driver didn't work the way I had expected them to (I was
trying to hack them in in order to get my Targus stowaway keyboard
working; I did get it to mostly ``do the right thing,'' but it wasn't
perfect and I got busy with other stuff.  I'll get back to it
eventually.)

I've been meaning to try out ppp on the bitsy, using my ricochet modem,
but I haven't round a serial cable for it yet (well, I haven't exactly
been looking that hard).  I definately thing it'd be pretty cool to use
my bitsy to send email from the train.

bway.net, huh?  You in New York?  Anyone else on the list in NYC?  We
ought to start a New York Plan 9 Club or something.

	- Dan C.



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

* [9fans] Re: bitsy question
  2001-06-26 17:10 ` [9fans] " Dan Cross
@ 2001-06-26 19:51   ` John Packer
  2001-06-26 20:34     ` Dan Cross
  2001-06-27  1:15     ` [9fans] Two cpu servers? Ish Rattan
  2001-06-26 20:09   ` [9fans] Re: bitsy question John Packer
  2001-06-26 20:18   ` Latchesar Ionkov
  2 siblings, 2 replies; 185+ messages in thread
From: John Packer @ 2001-06-26 19:51 UTC (permalink / raw)
  To: Dan Cross, 9fans

Dan Cross wrote:

> You have to change sa1110_uartsetup() in sa1110uart.c
> (the last routine in the file) to assign a valid Queue pointer to
> kbdq.  I just changed the relevant section to be:
> 
>         if(console) {
>                 uartspecial(p, 115200, &kbdq, &printq, kbdcr2nl);
>         } else {
>                 kbdq = qopen(4*1024, 0, 0, 0);
>         }
> 

This is an interesting clue. I'll try this out tonight.

 
> btw- the serial console mode can be really handy at times; it's nice to
> be able to put the bitsy on it's cradle, start up con, and then type
> into bitsy windows without using bitsy/keyboard.  

I've noticed this - very useful. 

> Another problem you may have is that the bitsy uart driver doesn't
> really do modem control

I don't think I need modem control, I'm not using a modem: just a 
PPP server and client over the serial cable to my PC. 

This is, I'm guessing, how ActiveSync works, and how Linux users connect
to their Ipaqs. 

It just doesn't seem to authenticate.

This may be the wrong approach, I don't know. 


> I've been meaning to try out ppp on the bitsy, using my ricochet modem,
> but I haven't round a serial cable for it yet (well, I haven't exactly
> been looking that hard).  I definately thing it'd be pretty cool to use
> my bitsy to send email from the train.

Very.

> 
> bway.net, huh?  You in New York?  Anyone else on the list in NYC?  We
> ought to start a New York Plan 9 Club or something.

Yep.


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

* [9fans] Re: bitsy question
  2001-06-26 17:10 ` [9fans] " Dan Cross
  2001-06-26 19:51   ` John Packer
@ 2001-06-26 20:09   ` John Packer
  2001-06-26 20:36     ` Dan Cross
  2001-06-26 20:18   ` Latchesar Ionkov
  2 siblings, 1 reply; 185+ messages in thread
From: John Packer @ 2001-06-26 20:09 UTC (permalink / raw)
  To: 9fans

> Do you also use that serial line as the console?  You'll get garbage
> in your packets that way.
>
>	Sape


Hmm. I'm not running a con window when I try this. 

The debugging output appears to indicate a lack of response to a CHAP 
request. 

Maybe it is not picking up the '-s $user:$secret' option from the client.

	John


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

* Re: [9fans] Re: bitsy question
  2001-06-26 17:10 ` [9fans] " Dan Cross
  2001-06-26 19:51   ` John Packer
  2001-06-26 20:09   ` [9fans] Re: bitsy question John Packer
@ 2001-06-26 20:18   ` Latchesar Ionkov
  2001-06-26 20:28     ` Matt
  2 siblings, 1 reply; 185+ messages in thread
From: Latchesar Ionkov @ 2001-06-26 20:18 UTC (permalink / raw)
  To: 9fans

On Tue, Jun 26, 2001 at 01:10:45PM -0400, Dan Cross said:
> 
> bway.net, huh?  You in New York?  Anyone else on the list in NYC?  We
> ought to start a New York Plan 9 Club or something.

I am in New York too.

	Lucho


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

* Re: [9fans] Re: bitsy question
  2001-06-26 20:18   ` Latchesar Ionkov
@ 2001-06-26 20:28     ` Matt
  2001-06-26 22:13       ` Steve Kilbane
  0 siblings, 1 reply; 185+ messages in thread
From: Matt @ 2001-06-26 20:28 UTC (permalink / raw)
  To: 9fans


> On Tue, Jun 26, 2001 at 01:10:45PM -0400, Dan Cross said:
> > 
> > bway.net, huh?  You in New York?  Anyone else on the list in NYC?  We
> > ought to start a New York Plan 9 Club or something.
> 
> I am in New York too.
> 
> Lucho

part of my heart lives there 



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

* Re: [9fans] Re: bitsy question
  2001-06-26 19:51   ` John Packer
@ 2001-06-26 20:34     ` Dan Cross
  2001-06-29 22:32       ` Boyd Roberts
  2001-06-27  1:15     ` [9fans] Two cpu servers? Ish Rattan
  1 sibling, 1 reply; 185+ messages in thread
From: Dan Cross @ 2001-06-26 20:34 UTC (permalink / raw)
  To: 9fans; +Cc: packer

In article <3B38E7BE.D4C22541@bway.net> you write:
>
>  [...]
>
>> Another problem you may have is that the bitsy uart driver doesn't
>> really do modem control
>
>I don't think I need modem control, I'm not using a modem: just a 
>PPP server and client over the serial cable to my PC. 

Oh duh; of course you said that earlier and I was too slow to catch
on.  Yes, you're right; if you're not using a modem, you don't need
modem control.  For that matter, you might not need modem control
even if you have a modem.

>This is, I'm guessing, how ActiveSync works, and how Linux users connect
>to their Ipaqs. 

Well, I think they mostly use ``normal'' serial line protocols; either
just raw text passed over the serial line, or using a data transfer
protocol like xmodem.  I'm not sure they'd bother with the overhead of
PPP in the general case (where they just wanted to sync data, or copy
a file; for making TCP connections and the like, yeah, you'd need PPP
or SLIP or a real network interface).

>It just doesn't seem to authenticate.

That's almost certainly the keyboard input queue messing you up.

>This may be the wrong approach, I don't know. 

Well, if you've got an extra thousand bucks just laying around, definately
invest in the Wavelan route.  If not, then it's a reasonable approach; it
won't zoom, though, and I've found ip/ppp pretty unreliable (using a wireless
modem, though; still, it seems to work reasonably well under FreeBSD.  I
haven't been motivated enough to track down what's wrong, though).

>  [...]
>
>> bway.net, huh?  You in New York?  Anyone else on the list in NYC?  We
>> ought to start a New York Plan 9 Club or something.
>
>Yep.

Cool.  Any other New Yorker's?

	- Dan C.



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

* Re: [9fans] Re: bitsy question
  2001-06-26 20:09   ` [9fans] Re: bitsy question John Packer
@ 2001-06-26 20:36     ` Dan Cross
  0 siblings, 0 replies; 185+ messages in thread
From: Dan Cross @ 2001-06-26 20:36 UTC (permalink / raw)
  To: 9fans

In article <3B38EC0E.4326AA8D@bway.net> you write:
>Hmm. I'm not running a con window when I try this. 

Right, but the kernel on the bitsy is still hardwired to take data
from the serial port and place it into the keyboard input queue;
running con on the other end doesn't matter, what's running locally
on the bitsy is what's messing it up.

	- Dan C.



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

* Re: [9fans] Re: bitsy question
  2001-06-26 20:28     ` Matt
@ 2001-06-26 22:13       ` Steve Kilbane
  0 siblings, 0 replies; 185+ messages in thread
From: Steve Kilbane @ 2001-06-26 22:13 UTC (permalink / raw)
  To: 9fans

Matt wrote:
> part of my heart lives there 

part, huh? might have known that a plan 9'er would be distributed
at heart.

steve




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

* [9fans] Two cpu servers?
  2001-06-26 19:51   ` John Packer
  2001-06-26 20:34     ` Dan Cross
@ 2001-06-27  1:15     ` Ish Rattan
  1 sibling, 0 replies; 185+ messages in thread
From: Ish Rattan @ 2001-06-27  1:15 UTC (permalink / raw)
  To: 9fans


Does it make sense to have two cpu-servers?

I have a standalone spu/auth server running. How can I add another cpu
server to have two of these?

Any pointers will be appreciated.

-ishwar




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

* Re: [9fans] Re: the 'science' in computer science
  2001-06-16 23:34   ` Matt
@ 2001-06-28 21:29     ` Boyd Roberts
  2001-06-28 22:03       ` Matt
  0 siblings, 1 reply; 185+ messages in thread
From: Boyd Roberts @ 2001-06-28 21:29 UTC (permalink / raw)
  To: 9fans

> I know they've covered Assembler, Java, C++ and Databases.

surely s/he could have picked a 5th worthless subject...




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

* Re: [9fans] Re: the 'science' in computer science
  2001-06-28 21:29     ` Boyd Roberts
@ 2001-06-28 22:03       ` Matt
  2001-06-28 23:20         ` George Michaelson
  2001-06-29  4:30         ` Lucio De Re
  0 siblings, 2 replies; 185+ messages in thread
From: Matt @ 2001-06-28 22:03 UTC (permalink / raw)
  To: 9fans


----- Original Message -----
From: "Boyd Roberts" <boyd@fr.inter.net>
To: <9fans@cse.psu.edu>
Sent: Thursday, June 28, 2001 10:29 PM
Subject: Re: [9fans] Re: the 'science' in computer science


> > I know they've covered Assembler, Java, C++ and Databases.
>
> surely s/he could have picked a 5th worthless subject...

i think that's saved up for the final year

He constantly amazes us (his friends) with his computer cluelessness.

Like finding it difficult to persuade him that his overclocked celeron might
be struggling to execute the tcp/ip stack while he was trying to play
high-end games.

Or helping him install a windows based web proxy (literally double clicking
on setup.exe)


I remember they used MS Access for their database.


We had a CS graduate come for an interview. He was clearly a bit clueless.
The questions were scaled down to make him feel a bit better when he left.
"What is a hexadecimal number?"
"A combination of numbers and letters"

He had a nice suit on though.

M



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

* Re: [9fans] Re: the 'science' in computer science
  2001-06-28 22:03       ` Matt
@ 2001-06-28 23:20         ` George Michaelson
  2001-06-29 21:27           ` Boyd Roberts
  2001-07-18 15:49           ` Ralph Corderoy
  2001-06-29  4:30         ` Lucio De Re
  1 sibling, 2 replies; 185+ messages in thread
From: George Michaelson @ 2001-06-28 23:20 UTC (permalink / raw)
  To: 9fans


  > We had a CS graduate come for an interview. He was clearly a bit clueless.
  > The questions were scaled down to make him feel a bit better when he left.
  > "What is a hexadecimal number?"
  > "A combination of numbers and letters"
  >

You know, there are contexts where this is the right answer. Like, if you
manipulate them as input/output objects and need to check the datastream
to see if the tokenising input should end.

And, the difference between Hex 0F and Decimal 15 is that both have exactly
the same bit-pattern in memory. Strangely, if you add 2 apples in hex
and 2 oranges in decimal OR octal, you still have 4 bits of fruit. So, you 
can do mixed-base sums after all. Why don't they teach you that at
school any more?

I had a chum who'd had a 6th finger cut off early. If they'd left it on, would
he have had any advantages doing finger arithmetic?

  > He had a nice suit on though.
  > 

Should'a employed him then. Anybody slavish enough to dress up to get a job
is probably going to work hard for the first 7 months until disallusionment
sets in.

I still writhe with embarrassment recalling an interview for the UK N.E.R.C
to get a junior progroid job onboard the antarctic ships, when asked to
write a solution to pythagoras in pascal, there, in front of the panel. Flop
sweat and memory loss and nicotine withdrawal and sheer fright combined to
make it both humiliating for me, and revealing for them. I think they made
the right decision to quietly let me go. Still, I got to see the steam loco
graveyard at barry island so it wasn't all wasted.

cheers
	-George

PS I suspect that in this niche, people aren't working as a result of a
successful interview. I think they probably know people who know people
who trust people who let them on board. If there is an interview, its
more like dogs sniffing each other, or 'do you wanna be in my gang?' than
joining the army.

--
George Michaelson       |  APNIC
Email: ggm@apnic.net    |  PO Box 2131 Milton QLD 4064
Phone: +61 7 3367 0490  |  Australia
  Fax: +61 7 3367 0482  |  http://www.apnic.net




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

* Re: [9fans] Re: the 'science' in computer science
  2001-06-28 22:03       ` Matt
  2001-06-28 23:20         ` George Michaelson
@ 2001-06-29  4:30         ` Lucio De Re
  1 sibling, 0 replies; 185+ messages in thread
From: Lucio De Re @ 2001-06-29  4:30 UTC (permalink / raw)
  To: 9fans

On Thu, Jun 28, 2001 at 11:03:57PM +0100, Matt wrote:
> 
> He had a nice suit on though.
> 
You don't get, it then :-)  It's the shoes, what shoes was he
wearing? Were they well polished?

++L


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

* Re: [9fans] Re: the 'science' in computer science
  2001-06-28 23:20         ` George Michaelson
@ 2001-06-29 21:27           ` Boyd Roberts
  2001-07-18 15:49           ` Ralph Corderoy
  1 sibling, 0 replies; 185+ messages in thread
From: Boyd Roberts @ 2001-06-29 21:27 UTC (permalink / raw)
  To: 9fans

> Should'a employed him then. Anybody slavish enough to dress up to get a job
> is probably going to work hard for the first 7 months until disallusionment
> sets in.

they should come to france.




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

* Re: [9fans] Re: bitsy question
  2001-06-26 20:34     ` Dan Cross
@ 2001-06-29 22:32       ` Boyd Roberts
  0 siblings, 0 replies; 185+ messages in thread
From: Boyd Roberts @ 2001-06-29 22:32 UTC (permalink / raw)
  To: 9fans

> Cool.  Any other New Yorker's?

stair 9 is not that far from ny.




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

* Re: [9fans] sam vs acme
@ 2001-07-11 19:22   ` rob pike
  2001-07-11 20:08     ` James A. Robinson
  0 siblings, 1 reply; 185+ messages in thread
From: rob pike @ 2001-07-11 19:22 UTC (permalink / raw)
  To: 9fans

You can use the 1-2 chord to execute an arbitrarily long Edit command
from a scratch window.  Only the Edit word itself needs to be in the
window in which the command is to be run.

-rob



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

* Re: [9fans] sam vs acme
  2001-07-11 19:22   ` [9fans] sam vs acme rob pike
@ 2001-07-11 20:08     ` James A. Robinson
  0 siblings, 0 replies; 185+ messages in thread
From: James A. Robinson @ 2001-07-11 20:08 UTC (permalink / raw)
  To: 9fans

> You can use the 1-2 chord to execute an arbitrarily long Edit command
> from a scratch window.  Only the Edit word itself needs to be in the
> window in which the command is to be run.

Do you mean passing a Snarfed  argument to Edit in the target window tag?
Or something else?

I know about passing an arg to Edit, and after playing around a bit just
now I realized it's easier to type, Esc, Snarf, Paste into Edit then my
previous attempt (type, select, cut, paste, paste into Edit).  Maybe I'd
just need to use it for awhile to get used to doing it this way.


Jim


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

* Re: [9fans] architectures
@ 2001-07-12  8:42 forsyth
  2001-07-12 13:56 ` Laura Creighton
  2001-07-12 16:13 ` Ozan Yigit
  0 siblings, 2 replies; 185+ messages in thread
From: forsyth @ 2001-07-12  8:42 UTC (permalink / raw)
  To: 9fans

>>i'm particularly fond of the acme interface, and i really
>>like the chording (okay, maybe it's not for everyone, but _i_
>>really like it). i'm asking about non-techie folks. for them,
>>wouldn't a single-button interface be simpler to understand?

not necessarily, since the functionality of the extra buttons
must be provided somehow, whether by menus, pop-up menus,
key-mouse combinations, keys alone, or some other way.  much might
depend on the choice of conventions for using more than one button.
that in acme all three buttons select text is a big simplification.
i usually introduce it as follows: ``button 1 selects text, button 2
selects text, and button 3 ...'' and during the following pause
nearly everyone says ``selects text?''.  i then explain
that `of course' each button does different things with
the text selected.  that seems fine.  the chording for cut/paste/copy
takes a little practice, but since it has a `feel' much like grabbing
text from the screen, that also seems fine.   outside acme,
the Blit convention (perhaps adopted from Smalltalk, i don't know)
was something like: button 1 generally selected things, button 2 provided local
operations (usually on the thing selected), and button 3 provided global operations
for the application, with a few exceptions such as paint programs.
most menus were kept fairly small.

i know at least one non- technical user of acme who sends and receives
mail, plumbing photos and other things, and editing quite happily.
other non-technical people i've shown it to wanted to use acme on
their machines for document preparation and email because the
organisation into columns and frames and the use of the buttons was
just so much more effective than their `desktop' or a clutter of
windows.  (they also like the soft use of colour.)
contrary to Tog's advice on this point: with care i suspect
you can make abstractions simple and effective enough without insisting on
drawing a tenuous likeness to something in the `real world'.



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

* Re: [9fans] architectures
  2001-07-12  8:42 [9fans] architectures forsyth
@ 2001-07-12 13:56 ` Laura Creighton
  2001-07-12 16:13 ` Ozan Yigit
  1 sibling, 0 replies; 185+ messages in thread
From: Laura Creighton @ 2001-07-12 13:56 UTC (permalink / raw)
  To: 9fans; +Cc: lac

re: drawing tenuous likenesses to the real world.

It is possible in the days before everybody knew what a computer was,
and a computer program was, that there was some value in giving a user
a metaphor with something else on the real world.  These days it is a
major problem because quite frequently the metaphor is lousier than
what we could write if we focused on _how efficiently can we do what
we want to do_ rather than _what is something, anything, that somebody
is likely to have done before which is sort of like what we want to do_.

My favourite example is the desktop metaphor.  Now neat people can
have the experience of a messed up and cluttered desk.  You too can
lose important work and documents because you can't find them!

Laura


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

* Re: [9fans] architectures
  2001-07-12  8:42 [9fans] architectures forsyth
  2001-07-12 13:56 ` Laura Creighton
@ 2001-07-12 16:13 ` Ozan Yigit
  2001-07-12 16:33   ` Matt
  1 sibling, 1 reply; 185+ messages in thread
From: Ozan Yigit @ 2001-07-12 16:13 UTC (permalink / raw)
  To: 9fans

forsyth@caldo.demon.co.uk writes:

> contrary to Tog's advice on this point: with care i suspect
> you can make abstractions simple and effective enough without insisting on
> drawing a tenuous likeness to something in the `real world'.

An interesting related bit of work is "The Anti-Mac Interface" by Don
Gentner and Jakob Nielson, Communications of the ACM, 29(8), pp. 70-82
August 1996, but also found online. i wish we could have more of this kind
of de/re-construction; attempting to break all the interface design rules
and see what comes out. the results of this particular attempt are more
along the lines of raisin-bran cereal than waldorf salad but thought
provoking nevertheless.

oz
--
www.cs.yorku.ca/~oz	 | if you couldn't find any weirdness, maybe
york u. computer science | we'll just have to make some!   -- hobbes


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

* Re: [9fans] architectures
  2001-07-12 16:13 ` Ozan Yigit
@ 2001-07-12 16:33   ` Matt
  2001-07-12 18:12     ` Scott Schwartz
  0 siblings, 1 reply; 185+ messages in thread
From: Matt @ 2001-07-12 16:33 UTC (permalink / raw)
  To: 9fans


> An interesting related bit of work is "The Anti-Mac Interface" by Don
> Gentner and Jakob Nielson, Communications of the ACM, 29(8), pp. 70-82
> August 1996, but also found online.

http://www.acm.org/cacm/AUG96/antimac.htm



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

* Re: [9fans] architectures
  2001-07-12 16:33   ` Matt
@ 2001-07-12 18:12     ` Scott Schwartz
  2001-07-12 18:16       ` Martin Harriss
  2001-07-12 18:43       ` Dan Cross
  0 siblings, 2 replies; 185+ messages in thread
From: Scott Schwartz @ 2001-07-12 18:12 UTC (permalink / raw)
  To: 9fans

> http://www.acm.org/cacm/AUG96/antimac.htm

``...in designing Sun's home page we decided we needed to change it drastically
every month to keep the users' interest...''

No wonder it's so totally impossible to find anything in there!  That one
statement makes me doubt every other thing they said.  Sun's web site
has to be the worst I've ever used, especially taking into account
the obviously huge amount of effort that goes into it.  It's clearly
all about entertaining suits, and not at all about making information
available to users who don't want to waste their time.



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

* Re: [9fans] architectures
  2001-07-12 18:12     ` Scott Schwartz
@ 2001-07-12 18:16       ` Martin Harriss
  2001-07-12 18:43       ` Dan Cross
  1 sibling, 0 replies; 185+ messages in thread
From: Martin Harriss @ 2001-07-12 18:16 UTC (permalink / raw)
  To: 9fans

Scott Schwartz wrote:
>
> > http://www.acm.org/cacm/AUG96/antimac.htm
>
> ``...in designing Sun's home page we decided we needed to change it drastically
> every month to keep the users' interest...''
>
> No wonder it's so totally impossible to find anything in there!  That one
> statement makes me doubt every other thing they said.  Sun's web site
> has to be the worst I've ever used, especially taking into account
> the obviously huge amount of effort that goes into it.  It's clearly
> all about entertaining suits, and not at all about making information
> available to users who don't want to waste their time.

It's also one of the slowest web sites around.  I hate to think of the
amount of time that I've had to wait wating for their pages to load.
They used to *boast* that their web services were provided by a pair of
Ultra 1's.  Looks like they still are.

</gripe>
Martin


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

* Re: [9fans] architectures
  2001-07-12 18:12     ` Scott Schwartz
  2001-07-12 18:16       ` Martin Harriss
@ 2001-07-12 18:43       ` Dan Cross
  2001-07-13 14:52         ` Douglas A. Gwyn
  1 sibling, 1 reply; 185+ messages in thread
From: Dan Cross @ 2001-07-12 18:43 UTC (permalink / raw)
  To: 9fans

In article <20010712181225.17835.qmail@g.bio.cse.psu.edu> you write:
>``...in designing Sun's home page we decided we needed to change it drastically
>every month to keep the users' interest...''

Hmm, I predict that Sun will be the DEC of the 2000's; they'll stick
to an obsolete and overburdened product line until it's too late, and
then get bought out by Dell and ultimately squashed under foot.

	- Dan ``I saw a Solarian Light'' C.



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

* Re: [9fans] architectures
  2001-07-12 18:43       ` Dan Cross
@ 2001-07-13 14:52         ` Douglas A. Gwyn
  2001-07-13 15:13           ` Boyd Roberts
  0 siblings, 1 reply; 185+ messages in thread
From: Douglas A. Gwyn @ 2001-07-13 14:52 UTC (permalink / raw)
  To: 9fans

Dan Cross wrote:
> Hmm, I predict that Sun will be the DEC of the 2000's; they'll stick
> to an obsolete and overburdened product line until it's too late, ...

That's not really what DEC's problem was; there are whole books on this.


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

* Re: [9fans] architectures
  2001-07-13 14:52         ` Douglas A. Gwyn
@ 2001-07-13 15:13           ` Boyd Roberts
  0 siblings, 0 replies; 185+ messages in thread
From: Boyd Roberts @ 2001-07-13 15:13 UTC (permalink / raw)
  To: 9fans

From: "Douglas A. Gwyn" <DAGwyn@null.net>
>
> That's not really what DEC's problem was; there are whole books on this.

the rot had really set in at Digital as early as '93 when i was at PRL.




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

* Re: [9fans] Re: the 'science' in computer science
  2001-06-28 23:20         ` George Michaelson
  2001-06-29 21:27           ` Boyd Roberts
@ 2001-07-18 15:49           ` Ralph Corderoy
  1 sibling, 0 replies; 185+ messages in thread
From: Ralph Corderoy @ 2001-07-18 15:49 UTC (permalink / raw)
  To: 9fans

Hi George,

> I still writhe with embarrassment recalling an interview for the UK
> N.E.R.C

What's N.E.R.C?


Ralph.


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

* Re: [9fans] User Interface
@ 2001-08-14 12:54   ` rob pike
  2001-08-14 15:01     ` James A. Robinson
                       ` (2 more replies)
  0 siblings, 3 replies; 185+ messages in thread
From: rob pike @ 2001-08-14 12:54 UTC (permalink / raw)
  To: 9fans

> The editors, sam and acme are virtually unusable.

Many people disagree, even feel the opposite, that they are among
the easiest-to-use editors around.

> Why is it that such a simple task as editing the contents of a textfile 
> must cause so much pain?

I don't hear many yelps where I work and essentially everyone uses
either sam or acme.  I suspect you don't know how to use them.

A criticism I will accept is that there is inadequate documentation
explaining how to use them well.  Try reading the associated papers,
rather than just the man pages.  They help somewhat.

-rob



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

* Re: [9fans] User Interface
  2001-08-14 12:54   ` [9fans] User Interface rob pike
@ 2001-08-14 15:01     ` James A. Robinson
  2001-08-16 13:45     ` phaet0n
  2001-08-20  8:57     ` Randolph Fritz
  2 siblings, 0 replies; 185+ messages in thread
From: James A. Robinson @ 2001-08-14 15:01 UTC (permalink / raw)
  To: 9fans

> I don't hear many yelps where I work and essentially everyone uses
> either sam or acme.  I suspect you don't know how to use them.
> 
> A criticism I will accept is that there is inadequate documentation
> explaining how to use them well.  Try reading the associated papers,
> rather than just the man pages.  They help somewhat.

Actually, the documentation is far better that most I've seen. I'm am
talking about the associated papers you mention.  That's all I used for
awhile when learning to use sam.

Combine those papers with the man page and tutorial, and the docs cover
everything from concept to execution of command. I'm still working on
internalizing the nuances of addresses in ranges like -0+,+0-, but most
of the other commands (even 't' and 'm') are comfortable.


Jim


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

* Re: [9fans] User Interface
  2001-08-14 12:54   ` [9fans] User Interface rob pike
  2001-08-14 15:01     ` James A. Robinson
@ 2001-08-16 13:45     ` phaet0n
  2001-08-20  8:57     ` Randolph Fritz
  2 siblings, 0 replies; 185+ messages in thread
From: phaet0n @ 2001-08-16 13:45 UTC (permalink / raw)
  To: 9fans

I have to admit that reading this newsgroup is
perhaps the most amusing thing one can do on
the internet. Having followed it in silence since
release 3, I've decided to break silence.

Plan 9 is gorgeously designed. It's actually
refreshing. But I've not touched it recently.
More later.

The UI crisis can be traced to the fact that no
developer ships documentation with commerical
end-user software any more. Online help is
appauling. Moreover, developers have no
consistency of metaphor. Apple's success can be
traced to the fact that their UI guidelines were
with development documentation. I've never
encountered an Apple user who didn't have at
least minimal command of a new application,
mainly because developers tried to adhere to
those guidelines. If you expect those guidelines
to be followed by every OS, well you're an idiot.
However, if you expect the UI to be intuitive,
then you're dead right. The installer for Plan 9
is intuitive. In fact, Rio is intuitive. I felt
at ease immediately using them. The only
curiosity was the ESC feature in Rio which
required reading the man page. As you see, I don't
even know what it's called, but I use it...
intuitive. This minimal intuitiveness is all that
is required. The rest falls on the user to gain
acquaintence with the metaphor used by the OS
designer. This is where Plan 9 becomes truly
refreshing. Please read about how it treats
process namespaces, how the snarf buffer works,
how rio can be run within itself, and thus how
hardware devices are multiplexed and treated as
files. The list goes on and on. But it requires a
little work on your part so, please, read the
papers on website.

Intuitiveness is framed by personal experience.
If someone could only get this into the skulls of
the HCI people at schools. We use elevators, hand- 
guns, can openers, etc., not because they're
inherently intuitive, but because we've seen them
being used since we were very little. This is not
some kind of Freudian condition that requires
having intefaces resemble your mother in order to
be intuitive. Although it would explain why
going down is so popular in others OSes.

As for having not used p9 recently that's because
I'm not willing to work in 8bit under my Matrox
MII. I don't know how to write PCI drivers. So
for now, I'm developing a compiler for a (yes, 
another) functional language, since I hate C and
can't get GHC, or nhc to build. I'm working on
BeOS, which is very nice but dying. It works and I
get to use OCaml to develop the compiler. Now all
I have to do is to ask you kind folks where I can
find out about Plan 9's object format so I can
port the Netwide assembler and get it to emit
proper object files. Then hopefully we can all
look forward to a nice compiler in the future
which emits objects for both Plan 9 and ELF.

Thank you. And keep me laughing, or crying.
Thanks to Rob eh, and the gang at Bell Labs.
Your work is greatly appreciated.

ph
--


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

* Re: [9fans] User Interface
  2001-08-14 12:54   ` [9fans] User Interface rob pike
  2001-08-14 15:01     ` James A. Robinson
  2001-08-16 13:45     ` phaet0n
@ 2001-08-20  8:57     ` Randolph Fritz
  2 siblings, 0 replies; 185+ messages in thread
From: Randolph Fritz @ 2001-08-20  8:57 UTC (permalink / raw)
  To: 9fans

In article <20010814125559.826F319A3E@mail.cse.psu.edu>, rob pike wrote:
>> The editors, sam and acme are virtually unusable.
> 
> Many people disagree, even feel the opposite, that they are among
> the easiest-to-use editors around.
> 
>> Why is it that such a simple task as editing the contents of a textfile 
>> must cause so much pain?
> 
> I don't hear many yelps where I work and essentially everyone uses
> either sam or acme.  I suspect you don't know how to use them.
> 
> A criticism I will accept is that there is inadequate documentation
> explaining how to use them well.  Try reading the associated papers,
> rather than just the man pages.  They help somewhat.
> 

I think a key point has been hit, albeit glancingly: computer
scientists are willing to study a system before using it; most
people--including most software professionals, these days--are not.

The original usability goal of the Mac was 30 minutes from a newbie
sitting down to beginner-level productivity.  (Without, I think,
reference to any manuals, though with quite a lot of text on-screen.)
A much gentler learning curve, yes?

Now there is no requirement that Plan 9 be accessible without
extensive study.  However, I suspect there are good reasons to look at
these issues more closely.  If nothing else, it seems to me there are
interesting design process issues in the area, and working on it might
open up interesting research topics.  I've seen a lot of sneering at
the Mac, but, still--30 minutes to usability?  That's an impressive
design achievement, and it surprises me it doesn't engender more
respect and emulation.

It also seems to me that aiming at a gentler learning curve for
software developers might attract a broader group of software
researchers to Plan 9 and--forgive me if I have this wrong--isn't that
one of the reasons Plan 9 is being published on the internet with
source code?

It would be an interesting research topic for someone who wasn't
busily studying architecture and building science... :-)

Randolph


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

* Re: [9fans] Virtual memory in BSD and Plan9
@ 2001-10-25 17:55 Russ Cox
  2001-10-25 18:29 ` William Josephson
  0 siblings, 1 reply; 185+ messages in thread
From: Russ Cox @ 2001-10-25 17:55 UTC (permalink / raw)
  To: 9fans

	Could you please recommend me a reading on both architectures to
	understand differences between them. I read here that BSD paging has
	some drawbacks to AT&T one (used in Plan9). And I want to make this
	clear for myself.

The discussions here were talking about many-years-old
systems.  I don't think anyone even mentioned Plan 9's VM system,
which is just about the simplest thing you could imagine.
The BSDs have oodles more ``features.''  I'd look in
www.researchindex.com for the latest stuff, and in McKusick et al.
(Design and Implementation of the 4.4BSD OS) for older stuff.
You can decide for yourself whether Plan 9 needs any of it.

Russ



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

* Re: [9fans] Virtual memory in BSD and Plan9
  2001-10-25 17:55 [9fans] Virtual memory in BSD and Plan9 Russ Cox
@ 2001-10-25 18:29 ` William Josephson
  2001-10-26  8:09   ` [9fans] acme bug/annoyance? Matt
  2001-10-29 10:16   ` [9fans] Virtual memory in BSD and Plan9 John S. Dyson
  0 siblings, 2 replies; 185+ messages in thread
From: William Josephson @ 2001-10-25 18:29 UTC (permalink / raw)
  To: 9fans

On Thu, Oct 25, 2001 at 01:55:25PM -0400, Russ Cox wrote:
> The discussions here were talking about many-years-old
> systems.  I don't think anyone even mentioned Plan 9's VM system,
> which is just about the simplest thing you could imagine.
> The BSDs have oodles more ``features.''  I'd look in
> www.researchindex.com for the latest stuff, and in McKusick et al.
> (Design and Implementation of the 4.4BSD OS) for older stuff.
> You can decide for yourself whether Plan 9 needs any of it.

You probably want to take a look at Charles Cranor's PHd thesis from
Washington on UVM.  If I recall correctly, some of the *BSDs (NetBSD,
FreeBSD?) have picked it up or at least borrowed ideas.

 -WJ


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

* [9fans] acme bug/annoyance?
  2001-10-25 18:29 ` William Josephson
@ 2001-10-26  8:09   ` Matt
  2001-10-26 11:36     ` rob pike
  2001-10-29 10:16   ` [9fans] Virtual memory in BSD and Plan9 John S. Dyson
  1 sibling, 1 reply; 185+ messages in thread
From: Matt @ 2001-10-26  8:09 UTC (permalink / raw)
  To: 9fans

Hi,

I just started a new instance of Acme

typed some code in an empty yellow window which was a directory
listing of an empty directory, I'd put the filename in the titlebar
but not saved the file.

All was going well until I resized the column and lost all my typing.

Not the end of the world but not very user friendly either.

An instance of where DWIM would win over "you have to have the text in
a file already, stupid"

Matt



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

* Re: [9fans] acme bug/annoyance?
  2001-10-26  8:09   ` [9fans] acme bug/annoyance? Matt
@ 2001-10-26 11:36     ` rob pike
  2001-10-26 14:43       ` Scott Schwartz
  0 siblings, 1 reply; 185+ messages in thread
From: rob pike @ 2001-10-26 11:36 UTC (permalink / raw)
  To: 9fans

A nasty problem here.  When you resize a directory window, acme should recolumnate
the output, but I couldn't see how to get that right while keeping the user's text, so I
just started over.  A directory window is therefore a kind of scratch typing space, which
is actually a feature I like but is clearly a consequence of, rather than integral to, the design.

I suppose the documentation should mention this.

-rob

----- Original Message ----- 
From: Matt <matt@proweb.co.uk>
To: <9fans@cse.psu.edu>
Sent: Friday, October 26, 2001 4:09 AM
Subject: [9fans] acme bug/annoyance?


> Hi,
> 
> I just started a new instance of Acme
> 
> typed some code in an empty yellow window which was a directory
> listing of an empty directory, I'd put the filename in the titlebar
> but not saved the file.
> 
> All was going well until I resized the column and lost all my typing.
> 
> Not the end of the world but not very user friendly either.
> 
> An instance of where DWIM would win over "you have to have the text in
> a file already, stupid"
> 
> Matt
> 
> 



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

* Re: [9fans] acme bug/annoyance?
  2001-10-26 11:36     ` rob pike
@ 2001-10-26 14:43       ` Scott Schwartz
  0 siblings, 0 replies; 185+ messages in thread
From: Scott Schwartz @ 2001-10-26 14:43 UTC (permalink / raw)
  To: 9fans

> I suppose the documentation should mention this.

For that matter, maybe such windows should be tinted differently.



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

* Re: [9fans] Virtual memory in BSD and Plan9
  2001-10-25 18:29 ` William Josephson
  2001-10-26  8:09   ` [9fans] acme bug/annoyance? Matt
@ 2001-10-29 10:16   ` John S. Dyson
  1 sibling, 0 replies; 185+ messages in thread
From: John S. Dyson @ 2001-10-29 10:16 UTC (permalink / raw)
  To: 9fans

wkj-despam@eecs.harvard.edu (William Josephson) wrote in message news:<20011025142927.B8085@honk.eecs.harvard.edu>...
> On Thu, Oct 25, 2001 at 01:55:25PM -0400, Russ Cox wrote:
> > The discussions here were talking about many-years-old
> > systems.  I don't think anyone even mentioned Plan 9's VM system,
> > which is just about the simplest thing you could imagine.
> > The BSDs have oodles more ``features.''  I'd look in
> > www.researchindex.com for the latest stuff, and in McKusick et al.
> > (Design and Implementation of the 4.4BSD OS) for older stuff.
> > You can decide for yourself whether Plan 9 needs any of it.
> 
> You probably want to take a look at Charles Cranor's PHd thesis from
> Washington on UVM.  If I recall correctly, some of the *BSDs (NetBSD,
> FreeBSD?) have picked it up or at least borrowed ideas.
> 
FreeBSD and NetBSD have different VM systems.  FreeBSD's (which I
am the primary implementer), is really a corrected and filled out
MACH VM for UNIX.  It provides lots of the necessary shortcuts
fully virtualized for the process VM forking and things like that.
The original MACH VM port really wasn't meant as being production
ready (per my discussions with Hibler), but was more of a feasibility
exercise.  Even though it wasn't fully made robust in the original
implementations, it wasn't that much worse than many commercial UNIX
VM behaviors.

Probably the biggest difference doesn't occur during 'normal'
memory resident situations, but where FreeBSD has rather advanced
paging stats, and really does put off the thrashfest until the
system doesn't have enough pages to supply an adequate resident
working set.  If there is minimally enough memory, FreeBSD will
converge reasonably quickly, without undue thrashing.  In my early
experiments, it was very satisfying to hear the system 'calm down'
after experiencing thrashing due to a necessary change in working
set population.  Most other systems tended to keep on thrashing
for long periods, even when there was obviously enough memory.  The
pseudo-random pagouts and invalidations from non-FreeBSD systems
tended to really screw up the page reference information on memory
segments being used by otherwise runnable processes.   The relatively
good behavior has been especially useful when running user-mode
windowing systems, where the blocking from poorly chosen page
invalidations can really stop-up the works.

Both FreeBSD's VM and NetBSD's VM work pretty well (no real complaints
from either party), and most/all of the limitations of the original
MACH VM have been expunged.  There were even cases of limitations
that I thought to be unsolvable in the FreeBSD code eventually simply
be an 'exercise in data structures', and the last REAL limitation
due to address space/fork inheritance was remedied as a result of
competition from NetBSD's new VM stuff.

FreeBSDs and NetBSDs code is both adequately portable, and that
should not be a deciding issue.  Frankly, the most important deciding
issue is probably based upon knowledge of the VM code that the
individual who might do the port to Plan 9.  One might make a
'decision' that the VM shouldn't page anyway (except in odd situations),
and so the relative advantages of the two systems becomes less
important.

My philosophy is based upon the fact that an OS MUST NOT just be a fair
weather friend, and from my rather VM-centered viewpoint, I believe that
this includes the fact that VM shouldn't randomly thrash, when it could
more actively converge to a reasonable working set (when possible.)

If starting from scratch, it is really easy to write some code that
works.   However, there is ALOT more work to making a VM system
function under load to maximize availability of CPU cycles.  Unfortunately,
it is clear that VM system behavior is almost always a secondary
priority, because it doesn't specify/benchmark very easily.

John


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

* Re: [9fans] plumb
@ 2001-12-02  3:10   ` rob pike
  2001-12-02  3:31     ` Scott Schwartz
  0 siblings, 1 reply; 185+ messages in thread
From: rob pike @ 2001-12-02  3:10 UTC (permalink / raw)
  To: 9fans

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

HelpYou would be mostly right.  HelpCertainly B grew from
the idea that one program should tell another what to do.
HelpWhether it's natural is not for me to judge; also there was
a lot of time involved and it took two versions (Inferno and
Plan 9) to get a design I was comfortable with.

-Helprob


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

From: "Boyd Roberts" <boyd@fr.inter.net>
To: <9fans@cse.psu.edu>
Subject: [9fans] plumb
Date: Sun, 2 Dec 2001 00:57:32 +0100
Message-ID: <02a101c17ac3$f150cba0$a4b6c6d4@cybercable.fr>

HelpWould I be right in surmising that plumb was a natural
progression from B?

Or was it an independent thing?


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

* Re: [9fans] plumb
  2001-12-02  3:10   ` [9fans] plumb rob pike
@ 2001-12-02  3:31     ` Scott Schwartz
  0 siblings, 0 replies; 185+ messages in thread
From: Scott Schwartz @ 2001-12-02  3:31 UTC (permalink / raw)
  To: 9fans

> a lot of time involved and it took two versions (Inferno and
> Plan 9) to get a design I was comfortable with.

I'm still nervous that the app and the programs that plumber launches
have unrelated namspaces.

In a full blown Actor style system, there would be closures that made
it all work, but maybe Plan 9 could pass the information around by hand.



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

* [9fans] Getting started in Plan9 - help
@ 2002-01-20 20:02 Roshan James
  2002-01-20 21:01 ` Matt H
                   ` (3 more replies)
  0 siblings, 4 replies; 185+ messages in thread
From: Roshan James @ 2002-01-20 20:02 UTC (permalink / raw)
  To: 9fans

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

Getting started in Plan9
-------------------------    
Its been a little over a week since i got my Plan9 working and 
I still seem to be in tourist mode.Lots of questions and 
a few suggestions:
(I promise I have tried to answer these for myself before
before I am ask them)

It would be great if we have a school boy style step-by-step 
getting-off-the-ground tour of plan9, maybe somewhere in the
wiki. I would be glad to do this, if i knew enough.

Graphics
-----------
- I am working with an S3 Trio 64v2 card, the install floppy
gave me 800*600 res,but after installation i am on 640*480 and
i cant seem to be able to change it
aux/vga -l 800x600x8
gives me
'Warning (BUG) : redefinition of aperture does not change 
s3screen segment.'
in a black background in the sentre of the screen and an error
message that reads 
'aux/vga: vgactlw: <size 800x600x8 m8>: vga already configured'
in the console window. it is a low end card but I believe that 
I did have a higher res through the boot disk so it should be 
possible here too. how can i change to a higher res ?

- If plan9 is booted through xosl in 640*480 res,plan9 graphics
display ends up corrupt. the bootloader does switch to text mode
before the OS is booted. anyother resolution or a text mode boot
loader does not seem to have a problem. 
The right quarter of the screen (approx) seems to be a duplicate
of the band of the screen display between in the left part. (bad
description i know). Anyway to fix this ?


Acessibility
-------------
- How can I read a couple of html docs in Plan9 ?
- Is there a place where the uses of directories the std file system
heirarchy is discussed, esp /n ? 
- /n/c: exists, how can i access the extended partitions ?
- How can i access the floppy a: ? /n/a: exists but shows no files.
- How can i access the extended windows partitions ? 
- Problem with accessing C: File operations to /n/c: causes a problem
'%mkdir /n/c:/testdir'
'mkdir: cant create /n/c:/testdir: write to hungup channel'
also a black background error message comes (is there a generic name
for these messages ?)
'dossrv 45: suicide: sys: trap fault read addr=0xb pc=0x00004757'
help ?

Shell
------ 
- How can I find/search for a file in Plan9 ? the usual find /|grep xxx 
does not exist here, what is the equivalent ?
- Why doesnt/Can rc have autocomplete and filename completion as in 
bash ? This has become so neccessary.

Keys
-----
- Why cant the left/right arrow keys+home+end keys move the cursor,
it is really difficult to edit something by placing the cursor there
with the mouse. 
- Unless is it part of a grander plan (no pun intended), can we move 
the process interrupt key from Del to something else and have the 
conventional functionality of del back ?

General
-------
- Is the option of plan9 default boot in bootsetup (during install)
safe for other OSes that exist on the system ?
- Why arent there more applications and more developers interested
in developing for plan9 ? 

Russ, I think it would kill you to keep answering all the newbie 
questions. Russ, Imel, Thanks for all the help you have been. I 
think the Plan9 faq needs updation with some of the more generic 
questions here. This is a lesson that could learned from the Win32's, 
if you want the OS to grow, you have to get people comfortable with 
it very fast. I think we can make that happen.

Rosh.

-------------------------------------------------------------------------------------
One Ring to rule them all, One Ring to find them,
One Ring to bring them all and in the darkness bind them.
(Lord of the Rings)

[-- Attachment #2: Type: text/html, Size: 4834 bytes --]

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

* Re: [9fans] Getting started in Plan9 - help
  2002-01-20 20:02 [9fans] Getting started in Plan9 - help Roshan James
@ 2002-01-20 21:01 ` Matt H
  2002-01-20 22:02   ` Scott Schwartz
  2002-01-21 10:22   ` Boyd Roberts
  2002-01-20 21:03 ` William S.
                   ` (2 subsequent siblings)
  3 siblings, 2 replies; 185+ messages in thread
From: Matt H @ 2002-01-20 21:01 UTC (permalink / raw)
  To: 9fans

Hi,

here's my set of slightly flippant answers

> - How can I read a couple of html docs in Plan9 ?
install inferno and use the netscape 3 hybrid Charon
I bet you can't wait :)

Web browsing it's plan9's end user pitfall.
No browser, not even text only (unless you count downloading & stripping the html tags text only)

> - How can I find/search for a file in Plan9 ? the usual find /|grep xxx
> does not exist here, what is the equivalent ?
du I think is your best bet

it's better still to learn where everything is :)

luckily there aren't 5 different directories where programs hide (well there can be but...)
all the executables show themselves in /bin which is a union of the directories where executables live if you see what I mean. There's aren't that many, have a look through them all, you'll remember easily enough.

> - Why doesnt/Can rc have autocomplete and filename completion as in
> bash ? This has become so neccessary.
yes, well, you see plan9 is more mouse driven. eventually you'll probably end up with Acme as much your "shell" as anything, and you'll find auto complete is unneccessary.
But you're right, it is a nice feature of the bash shell but then there are soooo many goddam directories on a Linux/FreeBSD box and auto complete is Bash's way of trying to alleviate the pain. If you miss it too much I'm sure you could just write a shell script to monitor /dev/cons for tabs, and echo the stuff into /dev/cons.
Personally, I do prefer having the screen as free form is plan9's is. The shell is more than the commands you can type, it's where you can type them.

> - Why cant the left/right arrow keys+home+end keys move the cursor,
> it is really difficult to edit something by placing the cursor there
> with the mouse.
That's what I said and I still get the urge to say it out loud. They told me I'd get used to it and you know what, I haven't. I'd even settle for Ctrl-J. But when I'm sat at a different terminal I still end up saying "I wish I was using Acme".

> - Unless is it part of a grander plan (no pun intended), can we move
> the process interrupt key from Del to something else and have the
> conventional functionality of del back ?
It depends who's conventions.

> - Why arent there more applications and more developers interested
> in developing for plan9 ?
file name completion

> This is a lesson that could learned from the Win32's,
> if you want the OS to grow, you have to get people comfortable with
> it very fast. I think we can make that.
After ten years of Windows I'm not sure people are comfortable with it.
It's clunky, crashes without explanation, brittle to end user fiddling, repeatedly exposes remote root exploits, is expensive, closed source. I need not go on.

> One Ring to rule them all, One Ring to find them,
> One Ring to bring them all and in the darkness bind them.
> (Lord of the Rings)
Arntcha sick of those mobiles phones yet?

Matt


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

* Re: [9fans] Getting started in Plan9 - help
  2002-01-20 20:02 [9fans] Getting started in Plan9 - help Roshan James
  2002-01-20 21:01 ` Matt H
@ 2002-01-20 21:03 ` William S.
  2002-01-20 21:34 ` William Josephson
  2002-01-21  6:53 ` cej
  3 siblings, 0 replies; 185+ messages in thread
From: William S. @ 2002-01-20 21:03 UTC (permalink / raw)
  To: 9fans

I can answer this one:

step one: (at the prompt type) a:
step two: cd /n/a:

Bill
Amsterdam, NL

On Mon, Jan 21, 2002 at 01:32:35AM +0530, Roshan James wrote:
<<snip>>
>
>    - How can i access the floppy a: ? /n/a: exists but shows no files.
<<snip>>


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

* Re: [9fans] Getting started in Plan9 - help
  2002-01-20 20:02 [9fans] Getting started in Plan9 - help Roshan James
  2002-01-20 21:01 ` Matt H
  2002-01-20 21:03 ` William S.
@ 2002-01-20 21:34 ` William Josephson
  2002-01-21  6:53 ` cej
  3 siblings, 0 replies; 185+ messages in thread
From: William Josephson @ 2002-01-20 21:34 UTC (permalink / raw)
  To: 9fans

On Mon, Jan 21, 2002 at 01:32:35AM +0530, Roshan James wrote:

> - Why doesnt/Can rc have autocomplete and filename completion as in
> bash ? This has become so neccessary.

binding everything on to /bin mostly remove the need for this.
If you haven't done so already, I would suggest grabbing the
various shell scripts and C programs from Russ Cox's web
page at www.eecs.harvard.edu/~rsc.  " and "" are very useful
in conjunction with the mouse.

 -WJ



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

* Re: [9fans] Getting started in Plan9 - help
  2002-01-20 21:01 ` Matt H
@ 2002-01-20 22:02   ` Scott Schwartz
  2002-01-22  9:54     ` ozan s yigit
  2002-01-21 10:22   ` Boyd Roberts
  1 sibling, 1 reply; 185+ messages in thread
From: Scott Schwartz @ 2002-01-20 22:02 UTC (permalink / raw)
  To: 9fans

| yes, well, you see plan9 is more mouse driven. eventually you'll
| probably end up with Acme as much your "shell" as anything, and you'll
| find auto complete is unneccessary.

I think that input prediction, if done well, is a beautiful feature, and
one that would fit very well with acme, or maybe as a kind of plumbing. I
used to use a unix thing called "rk"; a markov chain style thing that
continuously prompted you with a line or two of predicted input. You
used the arrow keys or tab or ctrl-m to accept the next char/word/line
of the prediction. It was uncannily good. A lot of command line stuff is
very repetative, and anyone who's seen Rob's fake usenet postings can
see how good this kind of thing is for email. One of these days I'll
get around to hacking it into acme, maybe.

| > - Unless is it part of a grander plan (no pun intended), can we move
| > the process interrupt key from Del to something else and have the
| > conventional functionality of del back ?

Especially since PC keyboards have an actual "break" key to use.



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

* Re: [9fans] Getting started in Plan9 - help
  2002-01-20 20:02 [9fans] Getting started in Plan9 - help Roshan James
                   ` (2 preceding siblings ...)
  2002-01-20 21:34 ` William Josephson
@ 2002-01-21  6:53 ` cej
  3 siblings, 0 replies; 185+ messages in thread
From: cej @ 2002-01-21  6:53 UTC (permalink / raw)
  To: 9fans

Rosh,

you can find some stupid scripts, including "find", at
http://cejchan.gli.cas.cz/plan9

Cheers,
--pac




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

* Re: [9fans] Getting started in Plan9 - help
  2002-01-20 21:01 ` Matt H
  2002-01-20 22:02   ` Scott Schwartz
@ 2002-01-21 10:22   ` Boyd Roberts
  2002-01-21 10:40     ` John Murdie
  1 sibling, 1 reply; 185+ messages in thread
From: Boyd Roberts @ 2002-01-21 10:22 UTC (permalink / raw)
  To: 9fans

Matt H wrote:
> > - Why doesnt/Can rc have autocomplete and filename completion as in
> > bash ? This has become so neccessary.
> yes, well, you see plan9 is more mouse driven. eventually you'll probably end up with Acme as much your "shell" as anything, and you'll find auto complete is unneccessary.
> But you're right, it is a nice feature of the bash shell but then there are soooo many goddam directories on a Linux/FreeBSD box and auto complete is Bash's way of trying to alleviate the pain. If you miss it too much I'm sure you could just write a shell script to monitor /dev/cons for tabs, and echo the stuff into /dev/cons.
> Personally, I do prefer having the screen as free form is plan9's is. The shell is more than the commands you can type, it's where you can type them.

I remember the major flamewar over whether Byron's unix implementation of rc
should do this;  I was in the 'no way' camp.  The result was that you could
conditionally compile in that readline trash.  You could probably pick it out
and stick into Plan 9's rc if you wanted to, but Plan 9 is not unix.  It has
much better ways to do things.

I guess another way to do it is to use pipefile.  One of the Kenji's (iirc)
did this for japanese input -- now there's a problem for you.

As for Latin-1: "Fco. J. Ballesteros" <nemo@plan9.escet.urjc.es> has volunteered
to clean up what I did late last year (I'm too busy).  If anyone wants it I'll
send it on or put it on a web page somewhere.  I think the only problem is the
caps-lock/ctrl key swap.


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

* Re: [9fans] Getting started in Plan9 - help
  2002-01-21 10:22   ` Boyd Roberts
@ 2002-01-21 10:40     ` John Murdie
  0 siblings, 0 replies; 185+ messages in thread
From: John Murdie @ 2002-01-21 10:40 UTC (permalink / raw)
  To: 9fans; +Cc: John Murdie

> - Why doesnt/Can rc have autocomplete and filename completion as in
> bash ? This has become so neccessary.

If you put the command history editor in the shell, then you can only
use it in the shell; if you use another shell from time to time, then
you have to learn to use that shell's (different) history mechanism.
It's far better to use a single, general, command history mechanism
provided by your terminal emulator or Acme (which is so more than a
terminal emulator). There is a slight loss from the shell and the
command history editor being separated, I know.

Incidentally, I hate command completion predictors; they remember my
typing mistakes days, weeks or months later, either hesitating to show
me the full, correct, command because of my previous mistake or, worse,
confidently complete my command with the mistake!
--

John A. Murdie
Experimental Officer (Software)
Department of Computer Science
University of York
England



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

* Re: [9fans] Getting started in Plan9 - help
  2002-01-20 22:02   ` Scott Schwartz
@ 2002-01-22  9:54     ` ozan s yigit
  2002-01-23 10:05       ` Bakul Shah
  0 siblings, 1 reply; 185+ messages in thread
From: ozan s yigit @ 2002-01-22  9:54 UTC (permalink / raw)
  To: 9fans

schwartz@bio.cse.psu.edu (Scott Schwartz) writes:

> used to use a unix thing called "rk"; a markov chain style thing that
> continuously prompted you with a line or two of predicted input.

it is "reactive keyboard" and i believe was a thesis work at university
of calgary, by Darragh under Witten. i'm sure a web search would still turn
up pointers. there is a book about it, not sure if still in print. the
interface was interesting in trying to accomodate disabled people to
interact with command interfaces by predictive completion.

oz
--
www.cs.yorku.ca/~oz	 | if you couldn't find any weirdness, maybe
york u. computer science | we'll just have to make some!   -- hobbes


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

* Re: [9fans] Getting started in Plan9 - help
  2002-01-22  9:54     ` ozan s yigit
@ 2002-01-23 10:05       ` Bakul Shah
  0 siblings, 0 replies; 185+ messages in thread
From: Bakul Shah @ 2002-01-23 10:05 UTC (permalink / raw)
  To: 9fans

ozan s yigit wrote:
> it is "reactive keyboard" and i believe was a thesis work at university
> of calgary, by Darragh under Witten. i'm sure a web search would still turn
> up pointers. there is a book about it, not sure if still in print. the
> interface was interesting in trying to accomodate disabled people to
> interact with command interfaces by predictive completion.

See volume 20 issues 29..32 of comp.sources.unix (Oct '89) at
  ftp://gatekeeper.dec.com/pub/usenet/comp.sources.unix/volume20/reactivekbd
The most recent version seems to be at
  http://www.csoft.net/~dummy/robert/software/rk-1.6.2.tar.gz


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

* Re: [9fans] venti
@ 2002-01-30  5:52   ` rob pike
  2002-01-30  6:23     ` George Michaelson
                       ` (2 more replies)
  0 siblings, 3 replies; 185+ messages in thread
From: rob pike @ 2002-01-30  5:52 UTC (permalink / raw)
  To: 9fans

Of course, but the beauty of Venti is the ease with which it provides
the hooks you need to address such issues.  Replication, mirroring,
load balancing, all those things are made trivial by the realization that
a hash is a universal address space.

-rob



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

* Re: [9fans] venti
  2002-01-30  5:52   ` [9fans] venti rob pike
@ 2002-01-30  6:23     ` George Michaelson
  2002-01-30  8:07     ` paurea
  2002-01-30 11:17     ` Boyd Roberts
  2 siblings, 0 replies; 185+ messages in thread
From: George Michaelson @ 2002-01-30  6:23 UTC (permalink / raw)
  To: 9fans


> Of course, but the beauty of Venti is the ease with which it provides
> the hooks you need to address such issues.  Replication, mirroring,
> load balancing, all those things are made trivial by the realization that
> a hash is a universal address space.

Except as the paper says, get above petabytes, and the *choice* of hash
gets harder/slower because it has to be 'better'. ie, too universal makes
the hash function less nice.

I like the comments about certain operations on older data being extremely
expensive. This resonated with my memories of using archival storage on the
TOPS-10 system, where you stalled for Operators to find the tape, load the
temporary pack, copy the tape to the pack, put that content into exposed
filespace in a place you could find it, and get back to you.

ICL CAFS might have been there, except it was the usual UK R&D 20+ years
before viable market/technology. Oh, the joys of doing research to far
ahead of the game...

if they made the hash function for URI/URN compatible, passing around
a referent in the web might wind up going back to the canonical data anyway.

cheers
	-George



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

* Re: [9fans] venti
  2002-01-30  5:52   ` [9fans] venti rob pike
  2002-01-30  6:23     ` George Michaelson
@ 2002-01-30  8:07     ` paurea
  2002-01-30 11:17     ` Boyd Roberts
  2 siblings, 0 replies; 185+ messages in thread
From: paurea @ 2002-01-30  8:07 UTC (permalink / raw)
  To: 9fans

rob pike writes:
 > all those things are made trivial by the realization that
 > a hash is a universal address space.

I read some time ago about a filesystem called LBFS which uses the same idea for
a network filesystem. Any opinions on it?.
--
                 Saludos,
                         Gorka

"Curiosity sKilled the cat"


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

* Re: [9fans] venti
  2002-01-30  5:52   ` [9fans] venti rob pike
  2002-01-30  6:23     ` George Michaelson
  2002-01-30  8:07     ` paurea
@ 2002-01-30 11:17     ` Boyd Roberts
  2 siblings, 0 replies; 185+ messages in thread
From: Boyd Roberts @ 2002-01-30 11:17 UTC (permalink / raw)
  To: 9fans

rob pike wrote:
> ... a hash is a universal address space.

Yes the hash buys you a lot.  I really like it.

I really like the 'server lied' case :)


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

* Re: Fwd: Re: [9fans] samuel (fwd)
@ 2002-03-01  6:20   ` rob pike
  2002-03-01  6:34     ` George Michaelson
  2002-03-01 12:04     ` Boyd Roberts
  0 siblings, 2 replies; 185+ messages in thread
From: rob pike @ 2002-03-01  6:20 UTC (permalink / raw)
  To: 9fans

> What do you say rob, could you suggest how? ;)

I don't remember exactly what samuel did, and I'm not much of a fan of
syntax-directed editing anyway.  Text is text.  C is text.  Sam is a
text editor.  Voilà.

Sam's `understanding' of C as plain text has never felt like a
limitation to me.  Sometimes I run grep in another window to figure
something out.  Use grep -n in *.[ch] and plumb the result and you're
probably 90% of the way to samuel.

Semantics-directed editing, now that might be something special.

-rob



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

* Re: Fwd: Re: [9fans] samuel (fwd)
  2002-03-01  6:20   ` Fwd: Re: [9fans] samuel (fwd) rob pike
@ 2002-03-01  6:34     ` George Michaelson
  2002-03-01 12:04     ` Boyd Roberts
  1 sibling, 0 replies; 185+ messages in thread
From: George Michaelson @ 2002-03-01  6:34 UTC (permalink / raw)
  To: 9fans


> Semantics-directed editing, now that might be something special.

Visual Basick IDE tries to tell you what arguments you want to put into
the function it thinks you are trying to write. 

I think thats a mis[-take | -mischievious idea | -understanding of what I want]

%PRESS TAB TO COMPLETE%

(sigh)

-George




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

* Re: Fwd: Re: [9fans] samuel (fwd)
  2002-03-01  6:20   ` Fwd: Re: [9fans] samuel (fwd) rob pike
  2002-03-01  6:34     ` George Michaelson
@ 2002-03-01 12:04     ` Boyd Roberts
  1 sibling, 0 replies; 185+ messages in thread
From: Boyd Roberts @ 2002-03-01 12:04 UTC (permalink / raw)
  To: 9fans; +Cc: Fredrik Juhlin

rob pike wrote:
> Sam is atext editor.  Voilà .

Je suis complètement d'accord avec toi.


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

* [9fans] Fourth Release of Plan 9 Now Available
@ 2002-04-27 16:35   ` rob pike, esq.
  2002-04-27 18:24     ` Scott Schwartz
                       ` (2 more replies)
  0 siblings, 3 replies; 185+ messages in thread
From: rob pike, esq. @ 2002-04-27 16:35 UTC (permalink / raw)
  To: 9fans

The Fourth Edition of Plan 9 may now be downloaded from

	http://plan9.bell-labs.com/plan9dist

As usual, this is an open source release.  The release
notes summarize the changes; a copy is attached but
they are available in other formats at:

    http://plan9.bell-labs.com/sys/doc/release4.html
    http://plan9.bell-labs.com/sys/doc/release4.ps
    http://plan9.bell-labs.com/sys/doc/release4.pdf


====



               Plan 9 From Bell Labs
               Fourth Release Notes
                   April, 2002


      Copyright (C) 2002 Lucent Technologies Inc.
                All Rights Reserved


The fourth release of the Plan 9 operating system from Bell
Labs packages a major overhaul of the system at every level.
 From the underlying file system protocol, 9P, through the
kernel, libraries, and applications, almost everything has
been modified and, in many cases, redesigned or rewritten.

The most significant change is that 9P has been redesigned
to address a number of shortcomings, most important, its
previous inability to handle long file names.  Unfortu-
nately, squeezing long names onto the disks of existing file
servers is a messy business that we're still grappling with,
so at the moment fs(4) and kfs(4) can't yet handle long
names, although they do talk the new protocol.  (In fact,
they talk both old and new, as required, to ease transi-
tion.) In the meantime, there is a workaround - lnfs(4) -
and many of the other file servers such as ramfs(4) and
u9fs(4) work just fine with long names.  It's only the stan-
dard disk-resident file servers that don't, and as soon we
have versions that do, we'll release them.

The following is a partial list of the major changes
throughout the system.

* The file system protocol, 9P, has been reworked.  It now
has variable-length names, so it can handle long names but
also is more compact when handling short ones.  It uses a
different format that is easily parsed, eliminating the need
for the old aux/fcall utility, and delegates its authenti-
cation duties to an external agent, factotum.

* Security has been a focus of attention.  A new security
agent, factotum(4), manages passwords and other secrets
and, coupled with a new secure file store secstore(4),
enables secure single sign-on.

* Cpu, import, and exportfs all encrypt their connections
now, and since they use the new 9P they also use new network
port numbers.  A new service aan(1) is used by import to
make its network connections more reliable in the face of
network outages.  The old ports still work, through the
agency of a protocol conversion filter srvold9p(4).

* We are phasing out the IL protocol since it doesn't handle
long-distance connections well (and long-distance networks
don't handle it well, either).  IL is still used by fs(4)
(in time, that too will change) but TCP has become the stan-
dard protocol for all other services.

* The software for the new network-resident secure block
store, venti(8), is included with this distribution.  We
are in the process of reworking fs(4) to use Venti rather
than a WORM as its permanent block repository/backup medium,
but that code is only in the design stage and is not
included in this release.

* The need to handle longer file names triggered a rethink-
ing of the way the system handles strings in general.  The
kernel is now more explanatory when it gives an error mes-
sage and more consistent in how it handles strings such as
commands to devices.  The interfaces to many of the system
calls, such as errstr(2) and wait(2) all had to change as
a result, as did the library interface to read directories,
stat(2) and its relatives.

* The formatted I/O package described in print(2) and
fmtinstall(2) has been redesigned.  Although the basic
interface is unchanged, it now runs without locks and has an
internal buffer management mechanism that means print no
longer needs a large on-stack buffer.  The interface for
writing custom print verbs and custom formatted I/O routines
has also been greatly improved.

* The thread library thread(2) has been completely rewrit-
ten.  The main visible change is that, coupled with the
changes to printing, threadprint is gone; you can just use
print or fprint at will.

* Support for electronic mail has been extended in many ways
and now includes some new spam filtering tools, much better
(and more standard) handling of MIME messages, the ability
to render incoming HTML mail, and much more.

There are so many changes to the programming interfaces of
the system that they are described in a separate document,
entitled Changes to the Programming Environment in the
Fourth Release of Plan 9.  Please read it before you start
updating your own software to run under the new system.

The installation method has also changed and we're moving
towards a new method for maintaining updates.  The Plan 9
Wiki (http://plan9.bell-labs.com/wiki/plan9) and Usenet
group (comp.os.plan9) are the places to visit to learn more
and stay current.  In particular, the installation notes are
now maintained in the Wiki; the traditional papers on
installation and start-up are gone.

There's lots more new stuff.  If you have problems, mail
9trouble@plan9.bell-labs.com or, better, check the wiki
http://plan9.bell-labs.com/wiki/plan9 or ask the Usenet
newsgroup comp.os.plan9.

Good Luck!


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

* Re: [9fans] Fourth Release of Plan 9 Now Available
  2002-04-27 16:35   ` [9fans] Fourth Release of Plan 9 Now Available rob pike, esq.
@ 2002-04-27 18:24     ` Scott Schwartz
  2002-04-27 22:14     ` Laura Creighton
  2002-04-29  9:37     ` Andrew
  2 siblings, 0 replies; 185+ messages in thread
From: Scott Schwartz @ 2002-04-27 18:24 UTC (permalink / raw)
  To: 9fans

Rob announces:
> The Fourth Edition of Plan 9 may now be downloaded from

Yay!  Thanks guys!

One question, though... The supported hardware page says:
  Serial mouse support has existed in the past and will exist
  in the future, but is not currently available. Sorry.

<Scott looks at his serial mouse>
<Looks at the web page>
<Looks at mouse>

Does that really mean that mice plugged into serial ports don't work?



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

* Re: [9fans] Fourth Release of Plan 9 Now Available
  2002-04-27 16:35   ` [9fans] Fourth Release of Plan 9 Now Available rob pike, esq.
  2002-04-27 18:24     ` Scott Schwartz
@ 2002-04-27 22:14     ` Laura Creighton
  2002-04-29  9:37     ` Andrew
  2 siblings, 0 replies; 185+ messages in thread
From: Laura Creighton @ 2002-04-27 22:14 UTC (permalink / raw)
  To: 9fans


Congratulations and thanks everybody.
Laura Creighton


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

* Re: [9fans] Fourth Release of Plan 9 Now Available
  2002-04-27 16:35   ` [9fans] Fourth Release of Plan 9 Now Available rob pike, esq.
  2002-04-27 18:24     ` Scott Schwartz
  2002-04-27 22:14     ` Laura Creighton
@ 2002-04-29  9:37     ` Andrew
  2 siblings, 0 replies; 185+ messages in thread
From: Andrew @ 2002-04-29  9:37 UTC (permalink / raw)
  To: 9fans

I've been trying to install it and here's what I got so far:
<snip>
kfs...version...time

init: starting /bin/rc
dossrv: serving #s/dos
assert failed: (*t)->magic==FREE_MAGIC
vga 52: suicide: sys: trap: fault read addr=0x0 pc=0x000260e6
assert failed: (*t)->magic==FREE_MAGIC
vga 55: suicide: sys: trap: fault read addr=0x0 pc=0x000260e6
 rio: can't open display: initdisplay: /dev/draw/new: no frame buffer
init: rc exit status: rc 10: rio 67: display open

and then it shows prompt.
R3 installation was able to init display on this voodoo 3 3000 card with no
problem.
What's the problem now?

--
DISCLAIMER: <DEFAULT DISCLAIMER>


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

* Re: [9fans] dumb question
@ 2002-06-28 16:49   ` rob pike, esq.
  2002-06-29  2:23     ` Scott Schwartz
  0 siblings, 1 reply; 185+ messages in thread
From: rob pike, esq. @ 2002-06-28 16:49 UTC (permalink / raw)
  To: 9fans

It strikes me that the arguments people are making against having
blanks in file names are the same arguments I heard against converting
Plan 9 to Unicode and UTF: too hard, too much code to change, too many
symmetries broken.  But there's no way this problem is as hard as that
conversion, and we handled that one just fine.  All that's missing is
a concerted effort to push ahead, plus the will to do so.  Neither
seems to be forthcoming, though.  Oh well.

-rob



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

* Re: [9fans] dumb question
  2002-06-28 16:49   ` [9fans] dumb question rob pike, esq.
@ 2002-06-29  2:23     ` Scott Schwartz
  0 siblings, 0 replies; 185+ messages in thread
From: Scott Schwartz @ 2002-06-29  2:23 UTC (permalink / raw)
  To: 9fans

Rob says:
| conversion, and we handled that one just fine.  All that's missing is
| a concerted effort to push ahead, plus the will to do so.  Neither
| seems to be forthcoming, though.  Oh well.

I suspect it's more the case that people need time to roll
the ideas around in their heads.  You guys wrote a nice paper
that pretty clearly showed how to do utf8 and make it work,
but still it took a while to catch on elsewhere.



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

* Re: [9fans] help, i'm in a wet paper bag and I can't get out
  2001-06-12 17:17 rog
@ 2001-06-12 23:04 ` rob pike
  0 siblings, 0 replies; 185+ messages in thread
From: rob pike @ 2001-06-12 23:04 UTC (permalink / raw)
  To: 9fans

You can do something closer to the inferno
    read 200
with something along the lines of
    syscall -o read 0 200 buf >[2] /dev/null

-rob




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

* Re: [9fans] help, i'm in a wet paper bag and I can't get out
  2001-06-12 17:02 ` Jonathan Sergent
@ 2001-06-12 19:38   ` Boyd Roberts
  0 siblings, 0 replies; 185+ messages in thread
From: Boyd Roberts @ 2001-06-12 19:38 UTC (permalink / raw)
  To: 9fans

> I think this is off-topic now.

you can run, but you can't hide.




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

* Re: [9fans] help, i'm in a wet paper bag and I can't get out
  2001-06-12 16:26 ` Jonathan Sergent
@ 2001-06-12 19:33   ` Boyd Roberts
  0 siblings, 0 replies; 185+ messages in thread
From: Boyd Roberts @ 2001-06-12 19:33 UTC (permalink / raw)
  To: 9fans

> I've done HTTP, FTP, and RTSP in ksh-88... oh, well.

that is sick.




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

* Re: [9fans] help, i'm in a wet paper bag and I can't get out
  2001-06-12 14:58 ` Matt
@ 2001-06-12 18:51   ` Boyd Roberts
  0 siblings, 0 replies; 185+ messages in thread
From: Boyd Roberts @ 2001-06-12 18:51 UTC (permalink / raw)
  To: 9fans

> Just giving it access only the domain it came from would suit me.
> 
> esp. if that meant *.domainIcamefrom.com

domains?  well as long as they are derived from local 'secure'
source rather that the DNS you're probably fairly safe.

what rog was talking about seemed to be some PKI based code
signing system.  i think the PKI's unworkable.  i'm not sure
what the solution is, but it would be a lot more secure if
you had the certificate of the signer on a chip card that
you jam into your machine.  gnarly problem, i think.




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

* Re: [9fans] help, i'm in a wet paper bag and I can't get out
@ 2001-06-12 18:21 forsyth
  0 siblings, 0 replies; 185+ messages in thread
From: forsyth @ 2001-06-12 18:21 UTC (permalink / raw)
  To: 9fans

>>you could always say "evil crackers attack vitanuova and steal very useful
>>inferno plugIn for IE" should get you on /. and that usually gets a few
>>converts ;)

i suspect we are more worried about ending up in the computing press
with ``vita nuova provides evil crackers with yet another nasty gateway into ...''.
admittedly a very big software company seems to get away with it,
but i suspect that's because they are very big software company, not
because they really got away with it.

in the interim, we'll probably go with an intermediate scheme that i think
will be adequate and be no more subtle for the user than anything else
on the net (ie, subtle enough but they should know by now).

we already did get a large number of downloads after mention on /.,
so that bit was easy.  ``don't they know how wrong this is?''
was one response.  i sometimes think that about computing.



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

* Re: [9fans] help, i'm in a wet paper bag and I can't get out
@ 2001-06-12 17:17 rog
  2001-06-12 23:04 ` rob pike
  0 siblings, 1 reply; 185+ messages in thread
From: rog @ 2001-06-12 17:17 UTC (permalink / raw)
  To: 9fans

> Yes, that was bugging me too.  But what else can you do if you might end
> up in a subprocess?  You end up with magic to seek the file descriptor
> backwards to cover up the fact that you read too much, and turning off
> buffering on file descriptors where seek doesn't work.

in general you can't do it. there's no way of finding out whether seek
works on a file, as it's done at the client end of a 9p or styx
connection (server just sees a read at a particular offset).  the
bourne shell's built-in read was actually just as bad; it just happened
to work most of the time, so you didn't notice.

> > 	getlines {
> > 		echo line: $line
> > 	} < filename
>
> That seems kind of awkward.  You might not want to do your reads in a
> loop; you might want to do them in multiple places; perhaps inside a
> function.

the basic problem is that due to the nature of the shell, the programs
it invokes can't maintain state from invocation to invocation. so
something like the above construct is the only way AFAIK of doing
buffering properly.

if you don't want your reads in a loop, then you have to sacrifice some
buffering. the inferno read(1) is somewhat different from the plan 9
read, and more like the read(2) system call:

	read 200

will make a single 200 byte read request and write the result to
stdout. at least this doesn't have to read a character at a time, but
it's dangerous for non-record-oriented files, as it might split utf
byte sequences.

although the buffered read with implicit loop looks as if it might be
awkward, in practise i haven't found it to be so.  it does seem to be a
very common way of structuring input-reading programs. and in the
inferno shell, you can always use the tk module and its channels to
change the structure around:

	load tk
	chan lines
	getlines {
		send lines $line
	} < /limbo/com.c &
	
	subfn readline {
		result = ${recv lines}
	}
	
	echo first line is: ${readline}
	echo second line is: ${readline}
	echo third line is: ${readline}

whether that's really ugly or quite elegant i'll leave as an exercise
for the reader...



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

* Re: [9fans] help, i'm in a wet paper bag and I can't get out
  2001-06-12 17:00 forsyth
@ 2001-06-12 17:02 ` Jonathan Sergent
  2001-06-12 19:38   ` Boyd Roberts
  0 siblings, 1 reply; 185+ messages in thread
From: Jonathan Sergent @ 2001-06-12 17:02 UTC (permalink / raw)
  To: 9fans


On Tuesday, June 12, 2001, at 10:00 AM, forsyth@vitanuova.com wrote:

>>> I've done HTTP, FTP, and RTSP in ksh-88... oh, well.
>
> not OSPF?
>

I think this is off-topic now.


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

* Re: [9fans] help, i'm in a wet paper bag and I can't get out
@ 2001-06-12 17:00 forsyth
  2001-06-12 17:02 ` Jonathan Sergent
  0 siblings, 1 reply; 185+ messages in thread
From: forsyth @ 2001-06-12 17:00 UTC (permalink / raw)
  To: 9fans

>>I've done HTTP, FTP, and RTSP in ksh-88... oh, well.

not OSPF?



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

* Re: [9fans] help, i'm in a wet paper bag and I can't get out
  2001-06-12  9:51 rog
  2001-06-12 12:40 ` Boyd Roberts
@ 2001-06-12 16:26 ` Jonathan Sergent
  2001-06-12 19:33   ` Boyd Roberts
  1 sibling, 1 reply; 185+ messages in thread
From: Jonathan Sergent @ 2001-06-12 16:26 UTC (permalink / raw)
  To: 9fans


On Tuesday, June 12, 2001, at 02:51 AM, rog@vitanuova.com wrote:

> only problem is that's not very efficient, and possibly wrong (for
> packet oriented connections, such as UDP), as it can only read one
> character at a time...

Yes, that was bugging me too.  But what else can you do if you might end 
up in a subprocess?  You end up with magic to seek the file descriptor 
backwards to cover up the fact that you read too much, and turning off 
buffering on file descriptors where seek doesn't work.

> that buffering problem was the reason i implemented a getlines
> primitive in the inferno std module which defines its own loop:
>
> 	getlines {
> 		echo line: $line
> 	} < filename

That seems kind of awkward.  You might not want to do your reads in a 
loop; you might want to do them in multiple places; perhaps inside a 
function.

> still, i'm not sure that shell scripts are the right place to be
> implementing network protocols (although i can't say i'm entirely
> innocent).

I've done HTTP, FTP, and RTSP in ksh-88... oh, well.


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

* Re: [9fans] help, i'm in a wet paper bag and I can't get out
  2001-06-12 14:32 rog
@ 2001-06-12 14:58 ` Matt
  2001-06-12 18:51   ` Boyd Roberts
  0 siblings, 1 reply; 185+ messages in thread
From: Matt @ 2001-06-12 14:58 UTC (permalink / raw)
  To: 9fans

> despite our reticence on the matter, we have been thinking quite hard
> about this. the problem is that there are some difficult security
> issues that need to be resolved before we do it, none of which have
> obvious solutions.
>
> like: what happens if someone puts a limbo app on a web page that takes
> up no screen space, but dials out and does nefarious things

I understand the problem.

Shame.
Just giving it access only the domain it came from would suit me.

esp. if that meant *.domainIcamefrom.com

I can just about see http://haxor.aol.com atacking dialup123.aol.com
in that scenario but go-on. I won't tell anyone it was you.

you could always say "evil crackers attack vitanuova and steal very useful
inferno plugIn for IE" should get you on /. and that usually gets a few
converts ;)

M





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

* Re: [9fans] help, i'm in a wet paper bag and I can't get out
  2001-06-12 13:43 ` Matt
@ 2001-06-12 14:58   ` Boyd Roberts
  0 siblings, 0 replies; 185+ messages in thread
From: Boyd Roberts @ 2001-06-12 14:58 UTC (permalink / raw)
  To: 9fans

> project2 will be the Inferno irc client

make sure you read that protocol spec :)




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

* Re: [9fans] help, i'm in a wet paper bag and I can't get out
  2001-06-12 13:38       ` Matt
@ 2001-06-12 14:56         ` Boyd Roberts
  0 siblings, 0 replies; 185+ messages in thread
From: Boyd Roberts @ 2001-06-12 14:56 UTC (permalink / raw)
  To: 9fans

> I was quite enjoying the challenge. 

well as my M-1 Abrams tank commander mate said to me:

    never give up, but choose your battles wisely.




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

* Re: [9fans] help, i'm in a wet paper bag and I can't get out
@ 2001-06-12 14:32 rog
  2001-06-12 14:58 ` Matt
  0 siblings, 1 reply; 185+ messages in thread
From: rog @ 2001-06-12 14:32 UTC (permalink / raw)
  To: 9fans

matt wrote:
> but when can I look forward to signing it and dropping it on a web page and
> using the Limbo plugin for IE ?
>
> that would be pretty useful. Giving clients a url of our IRC server instead
> of saying "download an IRC client".

despite our reticence on the matter, we have been thinking quite hard
about this. the problem is that there are some difficult security
issues that need to be resolved before we do it, none of which have
obvious solutions.

like: what happens if someone puts a limbo app on a web page that takes
up no screen space, but dials out and does nefarious things (e.g.
taking part in a DDOS attack). ok, so if you've got signatures, you
know who purported to sign the app, but what public key infrastructure
do you use? how do you handle key revocation?  i don't think it would
be desirable to produce something as unwieldy (and insecure) as the
stuff used by Windows, but neither does one want to burden the user
more than absolutely necessary.

plus probably a hundred other issues which i've forgotten about for the
moment.

it would be lovely to have limbo applications running inside IE with
access to all available devices (apart from anything, it makes for an
extremely easy-to-install inferno), but until the above problems are
solved, i'm not sure it's a good idea.

  cheers,
    rog.



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

* Re: [9fans] help, i'm in a wet paper bag and I can't get out
  2001-06-12 13:02   ` Matt
  2001-06-12 13:18     ` Boyd Roberts
@ 2001-06-12 14:05     ` Dan Cross
  1 sibling, 0 replies; 185+ messages in thread
From: Dan Cross @ 2001-06-12 14:05 UTC (permalink / raw)
  To: 9fans

In article <018001c0f33f$fb7d5c80$6401a8c0@freeze2k> you write:
>Thanks to everyone's suggestions. It's been fun to see everyone's favourite
>hammer
>
>Use python
>Use Limbo
>Use C
>Use awk
>
>just about everything but "Use perl" !

Use COBOL, dude....

	- Dan C.

:-P


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

* Re: [9fans] help, i'm in a wet paper bag and I can't get out
  2001-06-12 13:36 rog
@ 2001-06-12 13:43 ` Matt
  2001-06-12 14:58   ` Boyd Roberts
  0 siblings, 1 reply; 185+ messages in thread
From: Matt @ 2001-06-12 13:43 UTC (permalink / raw)
  To: 9fans

okay okay :)

project2 will be the Inferno irc client

but when can I look forward to signing it and dropping it on a web page and
using the Limbo plugin for IE ?

that would be pretty useful. Giving clients a url of our IRC server instead
of saying "download an IRC client".

I might get a gold star for that one.

Matt

/me dreams of weaning clients away from html for administrating their sites
/me doesn't want to hear about java.

----- Original Message -----
From: <rog@vitanuova.com>
To: <9fans@cse.psu.edu>
Sent: Tuesday, June 12, 2001 2:36 PM
Subject: Re: [9fans] help, i'm in a wet paper bag and I can't get out


> > One of the problems the monolithic perl script had was that to add
> > functionality they had to kill the bot, change the script and then log
in
> > again.
>
> to bang on (so to speak) about my personal favourite hammer, this is
> something that limbo is well suited for, as it provides dynamic loading
> & unloading of modules trivially.
>
> if ((mod := lookupmod(name)) == nil) {
> mod = load IRCbot "/dis/ircbots/" + name;
> if (mod == nil) {
> sys->fprint(stderr, "cannot find module %s: %r\n", name);
> return;
> }
> stashmod(name, mod);
> }
> mod->functionality();
>
>



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

* Re: [9fans] help, i'm in a wet paper bag and I can't get out
  2001-06-12 13:18     ` Boyd Roberts
@ 2001-06-12 13:38       ` Matt
  2001-06-12 14:56         ` Boyd Roberts
  0 siblings, 1 reply; 185+ messages in thread
From: Matt @ 2001-06-12 13:38 UTC (permalink / raw)
  To: 9fans

ok i lied about the last post thing 

----- Original Message ----- 
From: "Boyd Roberts" <boyd@fr.inter.net>
To: <9fans@cse.psu.edu>
Sent: Tuesday, June 12, 2001 2:18 PM
Subject: Re: [9fans] help, i'm in a wet paper bag and I can't get out


> > I actually started the ircbot as a way to get to grips with plan9 c.
> 
> ouch.  string handling in C -- no thanks.  limbo is a total win,

I was quite enjoying the challenge. 
The next stage was to make a hash table of Commands to function pointers.
so I could lose the if {strcmp} else if {strcmp} that was going to expand.
For a minute it was like being back in the Windows 3.1 API.


main(void) {
 int fd;
 int state = 0;
 Biobuf bio;
 String *line = s_new();
 String *token = s_new();

 int i = 0;

 fd = dial("tcp!irc!6667",0 , 0, 0);
 if (fd < 0)
  return;

 Binit(&bio, fd, OREAD);
  
 while(s_getline(&bio, s_restart(line))) {
  s_restart(line);
  print ("%s\n", s_to_c(line));
  s_parse(line, s_restart(token));
  if(strcmp("PING", s_to_c(token)) == 0) {
   s_parse(line, s_restart(token));
   fprint(fd, "PONG %s\n", s_to_c(token));
   if (state == 0) {
    fprint(fd, "JOIN #chan\nPRIVMSG #chan hullo\n");
    state = 1;
   }
  } 
   
  if(i++ == 2) {
   fprint(fd, "USER bot cb.com ircserver ChuglyV0.1\nNICK Chugly\n"); 
  }
 }
}




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

* Re: [9fans] help, i'm in a wet paper bag and I can't get out
@ 2001-06-12 13:36 rog
  2001-06-12 13:43 ` Matt
  0 siblings, 1 reply; 185+ messages in thread
From: rog @ 2001-06-12 13:36 UTC (permalink / raw)
  To: 9fans

> One of the problems the monolithic perl script had was that to add
> functionality they had to kill the bot, change the script and then log in
> again.

to bang on (so to speak) about my personal favourite hammer, this is
something that limbo is well suited for, as it provides dynamic loading
& unloading of modules trivially.

	if ((mod := lookupmod(name)) == nil) {
		mod = load IRCbot "/dis/ircbots/" + name;
		if (mod == nil) {
			sys->fprint(stderr, "cannot find module %s: %r\n", name);
			return;
		}
		stashmod(name, mod);
	}
	mod->functionality();



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

* Re: [9fans] help, i'm in a wet paper bag and I can't get out
  2001-06-12 13:02   ` Matt
@ 2001-06-12 13:18     ` Boyd Roberts
  2001-06-12 13:38       ` Matt
  2001-06-12 14:05     ` Dan Cross
  1 sibling, 1 reply; 185+ messages in thread
From: Boyd Roberts @ 2001-06-12 13:18 UTC (permalink / raw)
  To: 9fans

> I actually started the ircbot as a way to get to grips with plan9 c.

ouch.  string handling in C -- no thanks.  limbo is a total win,
just on this one point.  but there's a lot more to limbo than
just that.  i really like limbo.




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

* Re: [9fans] help, i'm in a wet paper bag and I can't get out
  2001-06-12 12:40 ` Boyd Roberts
@ 2001-06-12 13:02   ` Matt
  2001-06-12 13:18     ` Boyd Roberts
  2001-06-12 14:05     ` Dan Cross
  0 siblings, 2 replies; 185+ messages in thread
From: Matt @ 2001-06-12 13:02 UTC (permalink / raw)
  To: 9fans

I actually started the ircbot as a way to get to grips with plan9 c.

the first one logged in and then spat out the IRC lines on stdout for me to
see what was going on.

My spawning it with & and doing
echo 'PRIVMSG #chann :msg' > /net/tcp/N/data

gave me a fully blown client ! which wasn't bad for 10 lines of C I thought.

and it (false) dawned on me that maybe that was all the C I had to write.

And then after scratching a bit deeper I understood Russ's rlogin script a
bit better and saw that I didn't even need my C to do the connection (and
that's where I fell into the paper bag).

One of the problems the monolithic perl script had was that to add
functionality they had to kill the bot, change the script and then log in
again.

I thought I was able to leverage the namespace feature as a process jail so
I could sandbox the evals. In this was to add new commands to the bot all I
had to do was add new things to it's namespace. That has been the most
disappointing aspect as so much of the checking I've got to do now would
have fallen out of having that sandbox. Oh well. I can understand why.

Thanks to everyone's suggestions. It's been fun to see everyone's favourite
hammer

Use python
Use Limbo
Use C
Use awk

just about everything but "Use perl" !

I've got everything I need to make it work now I think.
Next post from me about it should be the working code.

Matt




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

* Re: [9fans] help, i'm in a wet paper bag and I can't get out
  2001-06-12  9:51 rog
@ 2001-06-12 12:40 ` Boyd Roberts
  2001-06-12 13:02   ` Matt
  2001-06-12 16:26 ` Jonathan Sergent
  1 sibling, 1 reply; 185+ messages in thread
From: Boyd Roberts @ 2001-06-12 12:40 UTC (permalink / raw)
  To: 9fans

> still, i'm not sure that shell scripts are the right place to be
> implementing network protocols (although i can't say i'm entirely
> innocent). dhog made a good suggestion:  that way you can run your
> program on any system supported by inferno, which is a nice bonus.

neither am i.  for the current irc thing i think limbo would be a
more efficient and more secure choice.  that damn irc protocol seems
to be in rfc limbo (no pun intended).  i wouldn't like some piece
of unforseen braindamage to break your script.

rc is a lot more bulletproof than the shell, but scripts executing
stuff that 3rd parties hand up is fraught with peril; you just don't
have the conscise, fine grained analysis that limbo gives you.

you could probably do it with rc, but it would be large chunks
of code to do the string mangling/validation and that leaves you
open to screwups.

1000 line scripts are not your friends.




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

* Re: [9fans] help, i'm in a wet paper bag and I can't get out
@ 2001-06-12  9:51 rog
  2001-06-12 12:40 ` Boyd Roberts
  2001-06-12 16:26 ` Jonathan Sergent
  0 siblings, 2 replies; 185+ messages in thread
From: rog @ 2001-06-12  9:51 UTC (permalink / raw)
  To: 9fans

sergent@IO.COM wrote:
> {
> 	while () {
> 		line=`{read}
> 		echo line: $line
> 	}
> } < filename

only problem is that's not very efficient, and possibly wrong (for
packet oriented connections, such as UDP), as it can only read one
character at a time...

that buffering problem was the reason i implemented a getlines
primitive in the inferno std module which defines its own loop:

	getlines {
		echo line: $line
	} < filename

still, i'm not sure that shell scripts are the right place to be
implementing network protocols (although i can't say i'm entirely
innocent). dhog made a good suggestion:  that way you can run your
program on any system supported by inferno, which is a nice bonus.

 cheers,
    rog.



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

end of thread, other threads:[~2002-06-29  2:23 UTC | newest]

Thread overview: 185+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <matt@proweb.co.uk>
2001-06-12  0:39 ` [9fans] help, i'm in a wet paper bag and I can't get out Matt
2001-06-12  0:55   ` Scott Schwartz
2001-06-12  1:12     ` Boyd Roberts
2001-06-12  1:00   ` Boyd Roberts
2001-06-12  1:30     ` Jonathan Sergent
2001-06-15  8:27     ` Hermann Samso
2001-06-15 11:53       ` Boyd Roberts
2001-06-15 12:18         ` Matt
2001-06-15 14:01         ` Matt
2001-06-15 14:25           ` Boyd Roberts
2002-01-20 20:02 [9fans] Getting started in Plan9 - help Roshan James
2002-01-20 21:01 ` Matt H
2002-01-20 22:02   ` Scott Schwartz
2002-01-22  9:54     ` ozan s yigit
2002-01-23 10:05       ` Bakul Shah
2002-01-21 10:22   ` Boyd Roberts
2002-01-21 10:40     ` John Murdie
2002-01-20 21:03 ` William S.
2002-01-20 21:34 ` William Josephson
2002-01-21  6:53 ` cej
  -- strict thread matches above, loose matches on Subject: below --
2001-10-25 17:55 [9fans] Virtual memory in BSD and Plan9 Russ Cox
2001-10-25 18:29 ` William Josephson
2001-10-26  8:09   ` [9fans] acme bug/annoyance? Matt
2001-10-26 11:36     ` rob pike
2001-10-26 14:43       ` Scott Schwartz
2001-10-29 10:16   ` [9fans] Virtual memory in BSD and Plan9 John S. Dyson
2001-07-12  8:42 [9fans] architectures forsyth
2001-07-12 13:56 ` Laura Creighton
2001-07-12 16:13 ` Ozan Yigit
2001-07-12 16:33   ` Matt
2001-07-12 18:12     ` Scott Schwartz
2001-07-12 18:16       ` Martin Harriss
2001-07-12 18:43       ` Dan Cross
2001-07-13 14:52         ` Douglas A. Gwyn
2001-07-13 15:13           ` Boyd Roberts
2001-06-26 16:33 [9fans] bitsy question John Packer
2001-06-26 17:10 ` [9fans] " Dan Cross
2001-06-26 19:51   ` John Packer
2001-06-26 20:34     ` Dan Cross
2001-06-29 22:32       ` Boyd Roberts
2001-06-27  1:15     ` [9fans] Two cpu servers? Ish Rattan
2001-06-26 20:09   ` [9fans] Re: bitsy question John Packer
2001-06-26 20:36     ` Dan Cross
2001-06-26 20:18   ` Latchesar Ionkov
2001-06-26 20:28     ` Matt
2001-06-26 22:13       ` Steve Kilbane
2001-06-12 18:21 [9fans] help, i'm in a wet paper bag and I can't get out forsyth
2001-06-12 17:17 rog
2001-06-12 23:04 ` rob pike
2001-06-12 17:00 forsyth
2001-06-12 17:02 ` Jonathan Sergent
2001-06-12 19:38   ` Boyd Roberts
2001-06-12 14:32 rog
2001-06-12 14:58 ` Matt
2001-06-12 18:51   ` Boyd Roberts
2001-06-12 13:36 rog
2001-06-12 13:43 ` Matt
2001-06-12 14:58   ` Boyd Roberts
2001-06-12  9:51 rog
2001-06-12 12:40 ` Boyd Roberts
2001-06-12 13:02   ` Matt
2001-06-12 13:18     ` Boyd Roberts
2001-06-12 13:38       ` Matt
2001-06-12 14:56         ` Boyd Roberts
2001-06-12 14:05     ` Dan Cross
2001-06-12 16:26 ` Jonathan Sergent
2001-06-12 19:33   ` Boyd Roberts
     [not found] <vikki@proweb.co.uk>
2001-06-10 17:32 ` [9fans] string to list? vikki
2001-06-10 17:47   ` Boyd Roberts
2001-06-10 17:55   ` Boyd Roberts
2001-06-10 18:03   ` Scott Schwartz
2001-06-10 21:48     ` Matt
2001-06-10 22:24       ` Scott Schwartz
2001-06-10 22:30         ` Boyd Roberts
2001-06-09 17:22 [9fans] could those of you who have students check this out for forsyth
2001-06-09 18:50 ` [9fans] Re: the 'science' in computer science andrey mirtchovski
2001-06-09 17:56   ` Boyd Roberts
2001-06-11  8:27     ` pac
2001-06-11 15:19     ` Dan Cross
2001-06-11 21:43       ` Boyd Roberts
     [not found]       ` <0cb501c0f2bf$97cacea0$e8b7c6d4@SOMA>
2001-06-11 22:43         ` paurea
2001-06-12 14:18           ` Dan Cross
2001-06-12 15:50             ` Boyd Roberts
2001-06-12 18:48               ` Dan Cross
2001-06-12  0:09   ` Scott Merrilees
2001-06-12  0:16     ` Boyd Roberts
2001-06-12  0:42       ` Scott Merrilees
2001-06-12  1:08         ` Boyd Roberts
     [not found]   ` <0cc301c0f2c0$78949560$e8b7c6d4@SOMA>
2001-06-12 14:12     ` Dan Cross
2001-06-16 23:34   ` Matt
2001-06-28 21:29     ` Boyd Roberts
2001-06-28 22:03       ` Matt
2001-06-28 23:20         ` George Michaelson
2001-06-29 21:27           ` Boyd Roberts
2001-07-18 15:49           ` Ralph Corderoy
2001-06-29  4:30         ` Lucio De Re
2000-09-07 21:57 [9fans] new versions of graphics programs? rob pike
2000-09-07 22:50 ` Jim Choate
     [not found]   ` <ravage@einstein.ssz.com>
2000-09-07 22:35     ` Tom Duff
2000-09-07 23:24       ` Jim Choate
2000-09-08 15:28         ` please_no_spam_to_
     [not found]           ` <D.M.Pick@qmw.ac.uk>
2000-09-08 16:43             ` Tom Duff
2000-08-18 15:34 [9fans] Re: Solaris thread scheaduling rob pike
     [not found] ` <rob@plan9.bell-labs.com>
2000-08-02 14:48   ` [9fans] pipefile rob pike
2000-08-02 15:49     ` James A. Robinson
2000-08-18 20:25   ` [9fans] Re: Solaris thread scheaduling Tom Duff
2000-09-06 21:59   ` [9fans] Reliable Cray Y-MP C90 Supercomputer rob pike
2000-09-06 22:02     ` James A. Robinson
2000-09-06 22:14       ` Boyd Roberts
2000-09-06 22:11     ` Boyd Roberts
2000-09-07 22:18   ` [9fans] new versions of graphics programs? Tom Duff
2000-11-01 22:23   ` [9fans] /n/smtp rob pike
2000-11-01 22:38     ` Scott Schwartz
2000-11-24  0:41   ` [9fans] Crazy idea... or a new project? rob pike
2000-11-24  0:48     ` Boyd Roberts
2000-11-24 22:13     ` Scott Schwartz
2000-11-24 22:24       ` Boyd Roberts
2001-02-06 17:11   ` [9fans] azerty [french] keyboard support rob pike
2001-02-06 19:10     ` Scott Schwartz
2001-02-06 19:23     ` Dan Cross
2001-02-07 15:23   ` [9fans] 9p2k, fsync rob pike
2001-02-07 18:42     ` Scott Schwartz
2001-02-08  1:19     ` Dan Cross
2001-02-08  9:43       ` Douglas A. Gwyn
2001-02-14 13:51   ` [9fans] isatty rob pike
2001-02-14 16:42     ` Scott Schwartz
2001-03-26 14:12   ` [9fans] sam mod for delete-forward rob pike
2001-03-26 15:37     ` Douglas A. Gwyn
2001-03-27  8:25       ` Boyd Roberts
2001-03-27 14:01         ` Sam
2001-03-27 16:51           ` Dan Cross
2001-03-28  8:37             ` Douglas A. Gwyn
2001-03-29  8:26               ` Boyd Roberts
2001-03-26 15:42     ` Scott Schwartz
2001-05-10 14:59   ` [9fans] snprint(), getfields() specification rob pike
2001-05-10 16:42     ` Scott Schwartz
2001-05-10 18:13     ` Steve Kilbane
2001-05-10 21:38       ` Boyd Roberts
2001-05-11  6:51         ` Steve Kilbane
2001-05-19 14:14   ` Re[4]: [9fans] home, end ^h^j^k^l rob pike
2001-05-19 14:26     ` Re[6]: " Matt H
2001-05-19 22:45       ` [9fans] ls -m Scott Schwartz
2001-05-19 22:50         ` Boyd Roberts
2001-05-19 15:35     ` Re[4]: [9fans] home, end ^h^j^k^l James A. Robinson
2001-05-19 20:36     ` Boyd Roberts
2001-05-19 23:30     ` Richard Elberger
2001-05-20  2:37     ` Boyd Roberts
2001-05-20  7:03     ` Lucio De Re
2001-05-20 11:16     ` paurea
2001-05-20 13:11       ` Boyd Roberts
2001-05-20 13:04     ` Boyd Roberts
2001-05-23  8:24     ` Randolph Fritz
2001-05-23  8:46       ` Re[6]: " Matt H
2001-05-23  9:04         ` Boyd Roberts
2001-05-20  0:16   ` [9fans] ls -m rob pike
2001-05-20  0:31     ` Boyd Roberts
2001-05-20  1:38     ` [9fans] mouse vs key Scott Schwartz
2001-05-20  6:29       ` Dan Cross
2001-05-20  8:09       ` Matt H
2001-05-20 11:35         ` Re[2]: [9fans] mouse vs key - nethack matt
2001-05-20 13:13           ` Boyd Roberts
2001-05-20 12:50         ` [9fans] mouse vs key Boyd Roberts
2001-05-29  4:27   ` [9fans] src vs db rob pike
2001-05-29  4:37     ` Scott Schwartz
2001-07-11 19:22   ` [9fans] sam vs acme rob pike
2001-07-11 20:08     ` James A. Robinson
2001-08-14 12:54   ` [9fans] User Interface rob pike
2001-08-14 15:01     ` James A. Robinson
2001-08-16 13:45     ` phaet0n
2001-08-20  8:57     ` Randolph Fritz
2001-12-02  3:10   ` [9fans] plumb rob pike
2001-12-02  3:31     ` Scott Schwartz
2002-01-30  5:52   ` [9fans] venti rob pike
2002-01-30  6:23     ` George Michaelson
2002-01-30  8:07     ` paurea
2002-01-30 11:17     ` Boyd Roberts
2002-03-01  6:20   ` Fwd: Re: [9fans] samuel (fwd) rob pike
2002-03-01  6:34     ` George Michaelson
2002-03-01 12:04     ` Boyd Roberts
2002-04-27 16:35   ` [9fans] Fourth Release of Plan 9 Now Available rob pike, esq.
2002-04-27 18:24     ` Scott Schwartz
2002-04-27 22:14     ` Laura Creighton
2002-04-29  9:37     ` Andrew
2002-06-28 16:49   ` [9fans] dumb question rob pike, esq.
2002-06-29  2:23     ` Scott Schwartz

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).