On Thursday, February 03, 2011 03:15:29 pm roger peppe wrote:
> On 3 February 2011 13:44, dexen deVries <dexen.devr...@gmail.com> wrote:
> > On Thursday, February 03, 2011 02:36:40 pm roger peppe wrote:
> >> On 3 February 2011 11:45, dexen deVries <dexen.devr...@gmail.com> wrote:
> >> > read(open("/foo")) returns byte stream under entry `foo' in the root
> >> > object.
> >> > 
> >> > readdir("/foo") returns `bar' (and possibly others) -- entries in
> >> > hierarchical section of object `/foo'.
> >> 
> >> there's no distinction between readdir and read in plan 9.
> > 
> > Forgot about that. Still, you can't chdir() into an inode that doesn't
> > indicate being a directory. And the bytestream returned by
> > read(SOME_DIRECTORY) is fixed-format and doesn't provide any space for
> > free- form bytestream.
> 
> i don't think that helps you.
> 
> under plan 9, reading a directory is this:
> 
> translate(read(open(dir)))
> 
> i don't see how you can make read(open(dir)) return
> something different.
> 
> oh yes, maintaining the usual semantics for cp becomes tricky.
> 
> mkdir z
> cp x.c z
> 
> do i mean to write x.c to z itself, or to a new file within z?
another gotcha would be:

echo aaa > foo
echo bbb > bar

bind -a foo  bar    # or bind -b foo.txt bar.txt

cat foo
any sensible semantics possible?


-- 
dexen deVries

[[[↓][→]]]

> how does a C compiler get to be that big? what is all that code doing?

iterators, string objects, and a full set of C macros that ensure
boundary conditions and improve interfaces.

ron minnich, in response to Charles Forsyth

http://9fans.net/archive/2011/02/90

Reply via email to