On Fri, Sep 2, 2011 at 5:01 AM, Ludovic Courtès
<address@hidden> wrote:
> I don't mean 6 args is improper. But maybe some guys just want an easy
> thing, and maybe Guile newbies need a easy start with 'scandir'.
Oh, I just meant to say you could build ‘scandir’ (and others) atop
‘file-system-fold’.
The scandir(3) C function is really meant to be a higher-order function
but its interface is awkward and mixes different concerns (traversal and
filtering.) Using something akin to the ‘directory-contents’ procedure
I posted earlier, one could then use SRFI-1 to do actual filtering.
> 'scandir' is a POSIX function, so many people will think it exists in Guile.
> We have 'opendir' and 'readdir', but no 'scandir', that's strange.
Yes, you’re right. However, I feel that we can come up with something
both simpler and more expressive, as sketched above.
yeah~I realized that the idea about a bunch of gorgeous high-order functions around one base function 'file-system-fold' is more creative and flexible. It becomes happier to add new features into Guile than wrap a C function. Anyway, C is more painful. ;-)
So, have you already implemented others like 'directory-content' instead of 'scandir' ? Or should we submit some patches for it?
What about the sort method? And I hope it won't dismiss "." and ".." in the result.
Let me retell my need, I need the function returns a sorted list which contained "." and "..". Is it easy to implement it with 'file-system-fold'?