9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
* [9fans] make-shells that create a file for you
@ 2012-08-30 20:36 Jason Catena
  2012-08-30 20:50 ` dexen deVries
  2012-08-30 20:54 ` Charles Forsyth
  0 siblings, 2 replies; 3+ messages in thread
From: Jason Catena @ 2012-08-30 20:36 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

>>> anyway, a meld of Rc shell and mk? crazy idea.

>> Inferno (Vitanuova) released a "mash" a ways back, but apparently the sources were lost.  It was mind-bogglingly interesting!

> In case anyone's interested (like I was):
> http://www.vitanuova.com/inferno/man/1/mash.html

I kept expecting to see the make-shell act proactively to create a
file, if the shell encountered a reference to a file that did not
exist in the filesystem, but for which it had a matching creation
rule.  For example, presume someone wants to cat a formatted man page
file, but only the .1 sources exist, and the make-shell knows how to
create the file. When the make-shell sees that the user wants to
reference a file that does not yet exist, it will go ahead and create
the file (kind of like how the plumber does things, including creating
new files, based on the patterns it gets).

This completely hides the make step execution, but still allows the
user to (re)define how files are made, and requires integration with
the shell.  On the other hand, mash, as I understand it, forces the
user to type make and a file target.  This to me is not different from
the current way files are made with make tools, so I'm not sure what
was gained by bundling it into the shell.

Of course, the suggested feature does slow down the shell when it
encounters a file that does not exist, since it has to scan through
its rules for a possible creation rule, rather than just exit with an
error.

Jason Catena



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

* Re: [9fans] make-shells that create a file for you
  2012-08-30 20:36 [9fans] make-shells that create a file for you Jason Catena
@ 2012-08-30 20:50 ` dexen deVries
  2012-08-30 20:54 ` Charles Forsyth
  1 sibling, 0 replies; 3+ messages in thread
From: dexen deVries @ 2012-08-30 20:50 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

On Thursday 30 of August 2012 15:36:36 Jason Catena wrote:
> >>> anyway, a meld of Rc shell and mk? crazy idea.
> >>
> >> Inferno (Vitanuova) released a "mash" a ways back, but apparently the
> >> sources were lost.  It was mind-bogglingly interesting!>
> > In case anyone's interested (like I was):
> > http://www.vitanuova.com/inferno/man/1/mash.html
>
> I kept expecting to see the make-shell act proactively to create a
> file, if the shell encountered a reference to a file that did not
> exist in the filesystem, but for which it had a matching creation
> rule.  (...)

plumb(7), to some extent.


--
dexen deVries



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

* Re: [9fans] make-shells that create a file for you
  2012-08-30 20:36 [9fans] make-shells that create a file for you Jason Catena
  2012-08-30 20:50 ` dexen deVries
@ 2012-08-30 20:54 ` Charles Forsyth
  1 sibling, 0 replies; 3+ messages in thread
From: Charles Forsyth @ 2012-08-30 20:54 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

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

The observation was that people at the time were adding clumsy
programming-language features to make,
which then executed commands it didn't really understand (ie, couldn't even
parse them),
and might it not be better just to add dependency operators (and others as
needed) to a well-designed command language.

On 30 August 2012 21:36, Jason Catena <jason.catena@gmail.com> wrote:

> This to me is not different from
> the current way files are made with make tools, so I'm not sure what
> was gained by bundling it into the shell.
>

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

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

end of thread, other threads:[~2012-08-30 20:54 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-08-30 20:36 [9fans] make-shells that create a file for you Jason Catena
2012-08-30 20:50 ` dexen deVries
2012-08-30 20:54 ` Charles Forsyth

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).