It may well be that a fine-grained interface isn't practical, but
perhaps there are some basics that we could implement, such as
- set owner of this thing
- (maybe) set group of this thing
- give owner|everyone|?some-group the ability to read from|write
to|remove|run this thing
- tell me whether any of these is possible
- make the metadata for this thing the same as the metadata for that thing
- tell me when this thing was created|last updated
in addition to the usual CRUD operations. More detailed views of
metadata might be the providence of OS-specific modules, as might
different semantics for content (and even stringy metadata). But
having this sort of simplified works-everywhere layer interposed
should handle common tasks like reading, writing, and copying without
making everyone replicate OS-specific variants.
The basic operations above have a POSIXy flavor, but the underlying
details shouldn't. For instance, "allow me to read and write this
thing" != chmod 6xx, thing. I'm not saying this is an easy solution,
just that it's worth the effort.
Then again, I think File::Copy is a better choice than C<system cp>
for publicly distributed code, so I'm already biased.
On 12/9/08, Brandon S. Allbery KF8NH <[EMAIL PROTECTED]> wrote:
> On 2008 Dec 9, at 19:56, Aristotle Pagaltzis wrote:
>> * Aristotle Pagaltzis <[EMAIL PROTECTED]> [2008-12-10 01:10]:
>>> Well go on.
>> Btw, I just realised that it can be read as sarcastic, which I
>> didn't intend. I am honestly curious, even if skeptical. I am
>> biased, but I am open to be convinced.
> BTW you can run into this issue even only considering Unix/POSIX:
> POSIX ACLs, AFS, NFSv4.
> I can see the point of a very simple base API with system-dependent
> extensions, but am likewise skeptical that one can be designed that
> isn't useless.
> brandon s. allbery [solaris,freebsd,perl,pugs,haskell] [EMAIL PROTECTED]
> system administrator [openafs,heimdal,too many hats] [EMAIL PROTECTED]
> electrical and computer engineering, carnegie mellon university KF8NH
Lists: bailey _dot_ charles _at_ gmail _dot_ com
Other: bailey _at_ newman _dot_ upenn _dot_ edu