On 26 Mar 2017, at 17:40, Larry McVoy <lm@mcvoy.com> wrote:

On Sun, Mar 26, 2017 at 09:26:00AM -0700, Lyndon Nerenberg wrote:
P.S.  A fun example of the simplicity of the
plan9 network API is this implementation of rlogin:
http://plan9.bell-labs.com/sources/contrib/rsc/rlogin

So while that is really neat, I personally think that's part of why Plan 9
didn't take off.  It's too clever, at least for me.  I know the rlogin
code pretty well and if you showed me that code and asked me what it was,
without the comments, I don't think I would have put it together.  On
the other hand, show me the C code and I'd be able to figure it out.

It's perhaps because I'm not the sharpest tool in the shed, but I really
like how blindingly obvious a lot of the original Unix code was.  Not saying
it was all that way, but a ton of it was sort of what you would imagine it
to be before you saw it.  Which means I understood it and could bugfix it.
--
---
Larry McVoy                     lm at mcvoy.com             http://www.mcvoy.com/lm

perhaps that was a rather extreme example, you can write rlogin in shell script, but con(1) is more typical - in C.

http://plan9.bell-labs.com/sources/plan9/sys/src/cmd/con/con.c

perhaps this is closer to what you would expect.

The network stuff is all wrapped up in the dial(2) library func, but note rawon and rawoff are pretty neat.

-Steve