Re: [9fans] Plan9 development

2010-11-05 Thread Lucio De Re
On Fri, Nov 05, 2010 at 02:50:22PM +1100, Bruce Ellis wrote:
 
 mash has a make builtin. very brief, as all the shell type stuff in mk
 goes away..
 
I seem to remember that the mash source was lost?

++L



Re: [9fans] Plan9 development

2010-11-05 Thread Bruce Ellis
no. it was the last thing i wrote for the bidness unit.

brucee

On Fri, Nov 5, 2010 at 6:11 PM, Lucio De Re lu...@proxima.alt.za wrote:
 On Fri, Nov 05, 2010 at 02:50:22PM +1100, Bruce Ellis wrote:

 mash has a make builtin. very brief, as all the shell type stuff in mk
 goes away..

 I seem to remember that the mash source was lost?

 ++L





[9fans] Passing a file descriptor between processes

2010-11-05 Thread Kirill A. Shutemov
One of the ugliest interface in Unix is passing a file descriptor between
processes [1]. Does Plan9 provide any mechanism for it?

[1] 
http://book.chinaunix.net/special/ebook/addisonWesley/APUE2/0201433079/ch17lev1sec4.html

-- 
 Kirill A. Shutemov



Re: [9fans] Passing a file descriptor between processes

2010-11-05 Thread Lucio De Re
On Fri, Nov 05, 2010 at 12:29:46PM +0200, Kirill A. Shutemov wrote:
 
 One of the ugliest interface in Unix is passing a file descriptor between
 processes [1]. Does Plan9 provide any mechanism for it?
 
You can pass fds in channels between threads, but for processes you
should look at #s for guidance.

++L



Re: [9fans] Passing a file descriptor between processes

2010-11-05 Thread roger peppe
see srv(3)
http://plan9.bell-labs.com/magic/man2html/3/srv

On 5 November 2010 10:29, Kirill A. Shutemov kir...@shutemov.name wrote:
 One of the ugliest interface in Unix is passing a file descriptor between
 processes [1]. Does Plan9 provide any mechanism for it?

 [1] 
 http://book.chinaunix.net/special/ebook/addisonWesley/APUE2/0201433079/ch17lev1sec4.html

 --
  Kirill A. Shutemov





Re: [9fans] Plan9 development

2010-11-05 Thread Eric Van Hensbergen
Quite right:
 http://code.google.com/p/inferno-os/source/browse/#hg/appl/cmd/mash

Although, no doubt brucee has a new, improved version not fit for mere
mortals to gaze upon.

 -eric


On Fri, Nov 5, 2010 at 2:55 AM, Bruce Ellis bruce.el...@gmail.com wrote:
 no. it was the last thing i wrote for the bidness unit.

 brucee

 On Fri, Nov 5, 2010 at 6:11 PM, Lucio De Re lu...@proxima.alt.za wrote:
 On Fri, Nov 05, 2010 at 02:50:22PM +1100, Bruce Ellis wrote:

 mash has a make builtin. very brief, as all the shell type stuff in mk
 goes away..

 I seem to remember that the mash source was lost?

 ++L







Re: [9fans] Plan9 development

2010-11-05 Thread C H Forsyth
 http://code.google.com/p/inferno-os/source/browse/#hg/appl/cmd/mash

that one is indeed fairly old, much as we received it, except for
changes to fit any changes in the environment, but

http://www.vitanuova.com/inferno/man/1/mash.html
and
http://www.vitanuova.com/inferno/man/1/mash-make.html

gives you some idea, especially the latter, in this context.---BeginMessage---
Quite right:
 http://code.google.com/p/inferno-os/source/browse/#hg/appl/cmd/mash

Although, no doubt brucee has a new, improved version not fit for mere
mortals to gaze upon.

 -eric


On Fri, Nov 5, 2010 at 2:55 AM, Bruce Ellis bruce.el...@gmail.com wrote:
 no. it was the last thing i wrote for the bidness unit.

 brucee

 On Fri, Nov 5, 2010 at 6:11 PM, Lucio De Re lu...@proxima.alt.za wrote:
 On Fri, Nov 05, 2010 at 02:50:22PM +1100, Bruce Ellis wrote:

 mash has a make builtin. very brief, as all the shell type stuff in mk
 goes away..

 I seem to remember that the mash source was lost?

 ++L



---End Message---


[9fans] Plan 9 libc locks and semacquire?

2010-11-05 Thread Venkatesh Srinivas
Hi,

In the paper 'Semaphores in Plan 9' by Sape and Russ Cox, there was this
note:
The performance of the semaphore-based lock implementation is sometimes
much better and never noticeably worse than the spin locks. We will replace
the spin lock implementation in the Plan 9 distribution soon.

As far as I can tell, this has not happened; is there any reason why? Are
there any objections of the sem*-based locks?

Thanks,
-- vs


[9fans] anyone else having difficulty booting kw today?

2010-11-05 Thread David Leimbach
I just did a pull and a recompile.

The kernel boots to the point where it wants to get the root.  I tell it the
same root server I used before the rebuild, and the prompt comes back again
asking for the root.

Any thoughts on where I should look?

usb/hub... root is from (tcp)[tcp]: 192.168.1.250
root is from (tcp)[192.168.1.250]:
root is from (tcp)[192.168.1.250]:
root is from (tcp)[192.168.1.250]:
root is from (tcp)[192.168.1.250]:
root is from (tcp)[192.168.1.250]: root is from (tcp)[192.168.1.250]: root
is from (tcp)[192.168.1.250]: root is from (tcp)[192.168.1.250]: root is
from (tcp)[192.168.1.250]: root is from (tcp)[192.168.1.250]: root is from
(tcp)[192.168.1.250]:

Dave


Re: [9fans] anyone else having difficulty booting kw today?

2010-11-05 Thread David Leimbach
OOPS dumb mistake on my part... I should have just pressed enter there.

I really ought to script that.

On Fri, Nov 5, 2010 at 9:41 AM, David Leimbach leim...@gmail.com wrote:

 I just did a pull and a recompile.

 The kernel boots to the point where it wants to get the root.  I tell it
 the same root server I used before the rebuild, and the prompt comes back
 again asking for the root.

 Any thoughts on where I should look?

 usb/hub... root is from (tcp)[tcp]: 192.168.1.250
 root is from (tcp)[192.168.1.250]:
 root is from (tcp)[192.168.1.250]:
 root is from (tcp)[192.168.1.250]:
 root is from (tcp)[192.168.1.250]:
 root is from (tcp)[192.168.1.250]: root is from (tcp)[192.168.1.250]: root
 is from (tcp)[192.168.1.250]: root is from (tcp)[192.168.1.250]: root is
 from (tcp)[192.168.1.250]: root is from (tcp)[192.168.1.250]: root is from
 (tcp)[192.168.1.250]:

 Dave



Re: [9fans] Plan9 development

2010-11-05 Thread dexen deVries
On Friday 05 of November 2010 14:31:01 Eric Van Hensbergen wrote:
 Quite right:
  http://code.google.com/p/inferno-os/source/browse/#hg/appl/cmd/mash
 
 Although, no doubt brucee has a new, improved version not fit for mere
 mortals to gaze upon.


A honest question: what is the rationale for merging functionality of make and 
shell into one? Is mash meant to be default interactive shell?

--
dexen



Re: [9fans] Plan9 development

2010-11-05 Thread Nick LaForge
 A honest question: what is the rationale for merging functionality of make and
 shell into one?

Use your imagination

Nick



[9fans] Google code-in?

2010-11-05 Thread EBo

Google just announced a code-in.  Is Plan9 participating?

  EBo --




Re: [9fans] Plan9 development

2010-11-05 Thread dexen deVries
On Friday 05 of November 2010 18:18:44 Nick LaForge wrote:
  A honest question: what is the rationale for merging functionality of
  make and shell into one?
 
 Use your imagination

Tried, failed.
To me, make is a tool for generating an acyclic, directed graph of 
dependencies  between build steps from some explicit and some wildcard rules 
-- and then traversing it in a sensible order. How's that for daily use shell?


Perhaps something about `doing a reasonable action for every target file named 
on the command line'?

--
dx



Re: [9fans] Plan9 development

2010-11-05 Thread andrey mirtchovski
 To me, make is a tool for generating an acyclic, directed graph of
 dependencies  between build steps from some explicit and some wildcard rules
 -- and then traversing it in a sensible order. How's that for daily use shell?

your focus is too narrowed on building. a sequence of commands piping
output to each other is also a directed acyclic graph.



Re: [9fans] Plan9 development

2010-11-05 Thread David Leimbach
On Fri, Nov 5, 2010 at 10:32 AM, dexen deVries dexen.devr...@gmail.comwrote:

 On Friday 05 of November 2010 18:18:44 Nick LaForge wrote:
   A honest question: what is the rationale for merging functionality of
   make and shell into one?
 
  Use your imagination

 Tried, failed.
 To me, make is a tool for generating an acyclic, directed graph of
 dependencies  between build steps from some explicit and some wildcard
 rules
 -- and then traversing it in a sensible order. How's that for daily use
 shell?


Why is a shell that can generate acyclic digraphs of dependencies bad?
 Someone clearly found a use for it at some point or it wouldn't have been
done.

I guess one could try to use make as an init system for services in a
configuration, but I don't see why not having those features in a shell is
better than having those features in a shell.

I do not currently use mash, however, I wonder if it's suitable for a
startup mechanism for services just after booting a kernel, to get stuff
started in the right order, without lavish attempts at building up those
dependencies in a script that can't make acyclic digraphs of dependencies
make sense natively.



 Perhaps something about `doing a reasonable action for every target file
 named
 on the command line'?


The possibilities are finite!



 --
 dx




Re: [9fans] Plan9 development

2010-11-05 Thread dexen deVries
On Friday 05 of November 2010 18:39:14 andrey mirtchovski wrote:
  To me, make is a tool for generating an acyclic, directed graph of
  dependencies  between build steps from some explicit and some wildcard
  rules -- and then traversing it in a sensible order. How's that for
  daily use shell?
 
 your focus is too narrowed on building. a sequence of commands piping
 output to each other is also a directed acyclic graph.

A bit in the style of plumber, one would have set of make-like rules defined in 
some $home/lib/mash, and mash would automagically apply them when target(s) 
match?

Currently shell use consists of indicating data source and actions to be 
taken. With mash it would be more about indicating desired targets in the 
current context, to be created with mash rules in currenct context, right?


On Friday 05 of November 2010 18:45:17 David Leimbach wrote:
 The possibilities are finite!

and so is the memory in a Turing machine...
*mumbles something about turing tar-pit*




Re: [9fans] Plan9 development

2010-11-05 Thread erik quanstrom
  -- and then traversing it in a sensible order. How's that for daily use
  shell?
 
 
 Why is a shell that can generate acyclic digraphs of dependencies bad?
  Someone clearly found a use for it at some point or it wouldn't have been
 done.

it is silly bloat if it's not an essential part of the shell.
but (as andrey has noted)  if you were to replace the
machinery behind these normal shell dag builders
('', '', '||', if, '|', 'and '`{}') with something general
enough to replace mk, you'd be on to something.

personally, i think getting the syntax right would be
the hard part.

 I guess one could try to use make as an init system for services in a
 configuration, but I don't see why not having those features in a shell is
 better than having those features in a shell.

that's been done with mk for linux by a rose hullman
student.  it was faster than some of the fancy purpose-
built tools due to better parallism.  see the list archives.

- erik



Re: [9fans] Plan9 development

2010-11-05 Thread roger peppe
On 5 November 2010 18:14, erik quanstrom quans...@labs.coraid.com wrote:
  -- and then traversing it in a sensible order. How's that for daily use
  shell?
 
 
 Why is a shell that can generate acyclic digraphs of dependencies bad?
  Someone clearly found a use for it at some point or it wouldn't have been
 done.

 it is silly bloat if it's not an essential part of the shell.
 but (as andrey has noted)  if you were to replace the
 machinery behind these normal shell dag builders
 ('', '', '||', if, '|', 'and '`{}') with something general
 enough to replace mk, you'd be on to something.

i did a mash-inspired version of mk as an inferno shell module once.
it required no new syntax (although it could be confused by
files named :...)

part of the problem was that it's not that useful to have
a mkfile-like syntax that's only understood on one system.

we ended up porting mk.



Re: [9fans] Plan9 development

2010-11-05 Thread erik quanstrom
  ('', '', '||', if, '|', 'and '`{}') with something general
  enough to replace mk, you'd be on to something.
 
 i did a mash-inspired version of mk as an inferno shell module once.
 it required no new syntax (although it could be confused by
 files named :...)

what you did was very cool, but iirc this was in addition
to, not replacing the standard  || ... bits.  one
could build pipelines and specify command order in one
unified way, no?

- erik



Re: [9fans] Google code-in?

2010-11-05 Thread Jacob Todd
Code-in? Could you elaborate?
On Nov 5, 2010 1:22 PM, EBo e...@sandien.com wrote:
 Google just announced a code-in. Is Plan9 participating?

 EBo --




Re: [9fans] Google code-in?

2010-11-05 Thread Nick LaForge
'Summer of code' for high school students?

Frankly, looking at its phrasing, it just looks like open-outsourcing
on a whole new level.

Nick

On 11/5/10, Jacob Todd jaketodd...@gmail.com wrote:
 Code-in? Could you elaborate?
 On Nov 5, 2010 1:22 PM, EBo e...@sandien.com wrote:
 Google just announced a code-in. Is Plan9 participating?

 EBo --






Re: [9fans] Plan9 development

2010-11-05 Thread Eric Van Hensbergen
On Fri, Nov 5, 2010 at 12:07 PM, dexen deVries dexen.devr...@gmail.com wrote:
 On Friday 05 of November 2010 14:31:01 Eric Van Hensbergen wrote:
 Quite right:
      http://code.google.com/p/inferno-os/source/browse/#hg/appl/cmd/mash

 Although, no doubt brucee has a new, improved version not fit for mere
 mortals to gaze upon.


 A honest question: what is the rationale for merging functionality of make and
 shell into one? Is mash meant to be default interactive shell?


Perhaps Brzr could post the paper -- perhaps that what was lost

 -eric



Re: [9fans] Google code-in?

2010-11-05 Thread erik quanstrom
On Fri Nov  5 16:06:59 EDT 2010, nicklafo...@gmail.com wrote:
 'Summer of code' for high school students?
 
 Frankly, looking at its phrasing, it just looks like open-outsourcing
 on a whole new level.

i don't think that's accurate.  the tasks need to
be small enough and easy enough for a 12-17 year old
student to resonably get one done in a week.  it would be
much easier to just do these tasks oneself than to even
write up the task, let alone walk a student through the
problem-solving process.

so i see this as even more magnanimous than gsoc.
google is essentially putting money directly into education.

we're not participating this year for lack of time.  but if there are any
students who would like to participate, please contact me off list.

- erik



Re: [9fans] Google code-in?

2010-11-05 Thread Nick LaForge
 i don't think that's accurate.  the tasks need to
 be small enough and easy enough for a 12-17 year old
 student to resonably get one done in a week.  it would be
 much easier to just do these tasks oneself than to even
 write up the task, let alone walk a student through the
 problem-solving process.

Thanks for setting me straight.

Nick



Re: [9fans] Passing a file descriptor between processes

2010-11-05 Thread Skip Tavakkolian
i wish #s had a directory structure and enforced group permissions.

On Fri, Nov 5, 2010 at 5:21 AM, erik quanstrom quans...@quanstro.net wrote:
 Currently, if your processes have a common parent, you can use rfork; if
 not, you must resort to #s. '#s' is a pretty unfortunate interface,
 though...

 okay, practicially speaking, what's wrong with #s, and what do you propose?

 - erik





Re: [9fans] Google code-in?

2010-11-05 Thread EBo



Code-in? Could you elaborate?


http://code.google.com/gci

  EBo --




Re: [9fans] Google code-in?

2010-11-05 Thread EBo



i don't think that's accurate.  the tasks need to
be small enough and easy enough for a 12-17 year old
student to resonably get one done in a week.  it would be
much easier to just do these tasks oneself than to even
write up the task, let alone walk a student through the
problem-solving process.

so i see this as even more magnanimous than gsoc.
google is essentially putting money directly into education.

we're not participating this year for lack of time.  but if there are 
any

students who would like to participate, please contact me off list.


The only students I know of at the moment who have the skills are 
interested in robotics and code in C, but I have not been in contact 
with them for a year or two.  I'll talk to their parents about next 
year.


  EBo --




Re: [9fans] Plan9 development

2010-11-05 Thread Bruce Ellis
i can answer that one easily. that's why it's called mash rather than
random marketting name. the intention was to replace plan9 rc with a
shell that was maintainable and had loadable modules. i wrote it in
limbo to show it works, damned well. the first requirement was a make
loadable. it's not built into mash, it's loadable. a few pages of code
that uses the shell rather than mk's builtin shell like stuff.

brucee

On Sat, Nov 6, 2010 at 4:07 AM, dexen deVries dexen.devr...@gmail.com wrote:
 On Friday 05 of November 2010 14:31:01 Eric Van Hensbergen wrote:
 Quite right:
      http://code.google.com/p/inferno-os/source/browse/#hg/appl/cmd/mash

 Although, no doubt brucee has a new, improved version not fit for mere
 mortals to gaze upon.


 A honest question: what is the rationale for merging functionality of make and
 shell into one? Is mash meant to be default interactive shell?

 --
 dexen