[squeak-dev] FileSystem

David T. Lewis lewis at mail.msen.com
Mon May 27 13:03:49 UTC 2013


On Sun, May 26, 2013 at 07:14:19PM -0700, Colin Putney wrote:
> On Fri, May 24, 2013 at 9:49 AM, tim Rowledge <tim at rowledge.org> wrote:
> 
> 
> > ould strongly suggest it in with a chance of being an improvement. My only
> > caveat would be that I feel reasonably sure it was not written with much of
> > an eye to 'odd' filing systems like RISC OS and thus it may need a bit more
> > work to drag it away from the depressingly mono-cultural ersatz-unix-style
> > that seems to have pervaded the world. I wouldn't mind if were actually a
> > good style...
> >
> 
> Yeah, Andreas smacked me over forcing unix style on Windows users.
> Fortunately, he smacked me with code, so there's a bit of agnosticism in
> there already.
> 
> Is it just a matter of generating correct path strings to pass to the
> primitives, or is there more to it?
> 

There are other things as well. I'm not sure if these apply to FileSystem
(sorry I can't look right now) but examples might be:

- Unix views the file system as a tree, regardless of how many file systems
and physical devices are involved. Windows models this differently as
volumes (C:, D: etc). Other operating systems may have different models.

- The notions of file creation time, last accessed time, last modified
time and so forth are done differently (and incompatibly) on different
kinds of file system.

- One operating system may simulaneously host multiple types of file
system, so some of the differences are associated with the file system
and not with the operating system per se.

I'm not sure what might be required to have FileSystem work smoothly
with RISC OS as well as Windows/Unix, but I think the effort would be
very worthwhile. Windows and Unix file systems are already very similar,
so the best way to ensure a good level of abstraction is to make sure
that the model also fits file systems such as RISC OS that are not
fundamentally unix-based.

So far I have looked at FileSystem only to the extent needed to get
OSProcess/CommandShell working on Pharo, so I don't know if the above
are really relevant. In any case, I'll be happy to help where I can.

Dave



More information about the Squeak-dev mailing list