From: Bakul Shah <bakul+plan9@bitblocks.com>
To: Fans of the OS Plan 9 from Bell Labs <9fans@9fans.net>
Subject: Re: [9fans] Plan9 development
Date: Fri, 5 Nov 2010 11:43:46 -0700 [thread overview]
Message-ID: <20101105184347.63ED15B74@mail.bitblocks.com> (raw)
In-Reply-To: Your message of "Thu, 04 Nov 2010 22:20:04 -0000." <bb4fd0152d5ccdb8acf49ae0d7b3f4d5@terzarima.net>
On Thu, 04 Nov 2010 22:20:04 -0000 Charles Forsyth <forsyth@terzarima.net> wrote:
> >But why isn't the source for mk (3929 lines w/ headers, okay 4661 with mkfil
> e and acid)
> >at least as long as all that Java in the ant distribution (213151 lines)?
> >That's a lot of catching up to do.
> >The market has clearly spoken, and it appears that more lines dominates the
> soup.
>
> one interesting thing about that example is that if it were done again
> for the Plan 9 environment, mk might well be even smaller, since
> some of the existing functionality isn't really used,
> or might be achieved by simpler mechanisms, or with functionality
> added instead by further composition with other programs;
> alternatively, it might be redone in a radically different way.
>
> either way you probably wouldn't get an entire O'Reilly book out of it though.
Some random thoughts triggered by Charles'es message:
1. The idea is to map mk to a special filesystem -- "mkfs"
takes on a whole new meaning! One would overlay mkfs on
a source tree.
We are going to build foo
mkdir foo foo/src
<put foo's source files in foo/src/>
cd foo
Specify a build rule for command foo:
echo 8c src/*.c -o .build > .rule
Specify dependencies a b & c of foo:
ln -s ../^(a b c) .dep/
Build foo:
ls .build
This checks dependencies a b c (if they are directories,
checks a/.build etc) and builds them. This will need to
be fleshed out the most... Default rules can be added
with something like plumb....
Install foo:
cp .build /bin/foo
Remove temporary files
rm .obj/* .build
I used symlinks to point to dependencies but may be there
is a smarter way.
A default .rule can be derived depending on what is in src/
Initial .dep/ may be derived by mkfs running a dependency
deriving program.
Objects in .obj/ may be similarly derived.
The utility if any is that a small set of mechanisms is
used, coupled with a simple convention.
This was fun little exercise (spent more time on
writing this email) so I am sure there are lots of holes.
Probably not worth building. It'd be too slow.
2. Factor out a way to track changes in any fs and trigger
commands. This would probably obviate the need to build a
number of special purpose file systems.
next prev parent reply other threads:[~2010-11-05 18:43 UTC|newest]
Thread overview: 91+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-11-04 9:36 Admiral Fukov
2010-11-04 9:47 ` Lucio De Re
2010-11-04 10:20 ` Steve Simon
2010-11-04 11:30 ` Brantley Coile
2010-11-04 15:39 ` David Leimbach
2010-11-04 15:55 ` Stanley Lieber
2010-11-04 16:01 ` John Floren
2010-11-04 16:39 ` ron minnich
2010-11-04 16:57 ` Stanley Lieber
2010-11-04 17:01 ` Don Bailey
2010-11-04 17:19 ` Jeff Sickel
2010-11-04 22:20 ` Charles Forsyth
2010-11-05 1:41 ` Venkatesh Srinivas
2010-11-05 3:50 ` Bruce Ellis
2010-11-05 7:11 ` Lucio De Re
2010-11-05 7:55 ` Bruce Ellis
2010-11-05 13:31 ` Eric Van Hensbergen
2010-11-05 15:16 ` C H Forsyth
2010-11-05 17:07 ` dexen deVries
2010-11-05 17:18 ` Nick LaForge
2010-11-05 17:32 ` dexen deVries
2010-11-05 17:39 ` andrey mirtchovski
2010-11-05 17:55 ` dexen deVries
2010-11-05 17:45 ` David Leimbach
2010-11-05 18:14 ` erik quanstrom
2010-11-05 18:37 ` roger peppe
2010-11-05 19:06 ` erik quanstrom
2010-11-08 11:04 ` roger peppe
2010-11-08 21:24 ` Bruce Ellis
2010-11-08 22:22 ` Charles Forsyth
2010-11-08 22:25 ` Bruce Ellis
2010-11-08 22:33 ` Charles Forsyth
2010-11-09 2:10 ` Jeff Sickel
2010-11-09 3:18 ` EBo
2010-11-09 8:10 ` Bruce Ellis
2010-11-13 19:15 ` Enrico Weigelt
2010-11-05 20:37 ` Eric Van Hensbergen
2010-11-06 0:55 ` Charles Forsyth
2010-11-06 2:20 ` Bruce Ellis
2010-11-06 20:24 ` dexen deVries
2010-11-05 18:43 ` Bakul Shah [this message]
2010-11-13 19:24 ` Enrico Weigelt
2010-11-14 2:17 ` Gary V. Vaughan
2010-11-14 5:47 ` Anthony Sorace
2010-11-14 6:24 ` erik quanstrom
2010-11-14 8:13 ` Gary V. Vaughan
2010-11-14 15:56 ` Jacob Todd
2010-11-14 16:24 ` ron minnich
2010-11-14 6:26 ` Russ Cox
2010-11-14 8:03 ` Anthony Sorace
2010-11-14 15:23 ` erik quanstrom
2010-11-14 17:46 ` Russ Cox
2010-11-14 22:16 ` erik quanstrom
2010-11-14 9:10 ` tlaronde
2010-11-14 9:32 ` Gary V. Vaughan
2010-11-14 10:22 ` tlaronde
2010-11-14 10:50 ` Carl-Daniel Hailfinger
2010-11-14 11:47 ` tlaronde
2010-11-14 21:44 ` Charles Forsyth
2010-11-14 21:47 ` Ori Bernstein
2010-11-18 5:30 ` Joel C. Salomon
2010-11-18 5:57 ` erik quanstrom
2010-11-18 22:50 ` Federico G. Benavento
2010-11-19 2:06 ` Joel C. Salomon
2010-11-19 3:13 ` Federico G. Benavento
2010-11-25 9:39 ` Greg Comeau
2010-11-15 4:29 ` Gary V. Vaughan
2010-11-15 5:05 ` Carl-Daniel Hailfinger
2010-11-15 15:48 ` Dan Cross
2010-11-15 16:24 ` Lucio De Re
2010-11-15 17:26 ` Brian L. Stuart
2010-11-16 3:32 ` lucio
2010-11-16 4:53 ` erik quanstrom
2010-11-16 5:09 ` lucio
2010-11-16 22:18 ` Christopher Nielsen
2010-11-15 18:11 ` Dave Eckhardt
2010-11-15 20:04 ` Steve Simon
[not found] ` <79E9F966-3C4E-44D9-8B1F-D22C9548CE74@gnu.org>
2010-11-15 1:02 ` Enrico Weigelt
2010-11-15 4:17 ` Gary V. Vaughan
2010-11-15 16:22 ` erik quanstrom
2010-11-17 23:48 ` Enrico Weigelt
2010-11-04 16:00 ` erik quanstrom
2010-11-04 17:12 ` Admiral Fukov
2010-11-04 17:19 ` andrey mirtchovski
2010-11-04 17:30 ` Admiral Fukov
2010-11-04 20:27 ` David Leimbach
2010-11-04 12:15 dexen deVries
2010-11-04 12:48 ` Venkatesh Srinivas
2010-11-04 17:14 ` Admiral Fukov
2010-11-17 7:38 Pavel Zholkover
2010-11-17 7:44 ` Lucio De Re
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20101105184347.63ED15B74@mail.bitblocks.com \
--to=bakul+plan9@bitblocks.com \
--cc=9fans@9fans.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).