[Chicken-users] a file system using Chicken

2007-06-06 Thread Dan Muresan
Hi folks, I've released DuggFS, a file system based on Fuse and implemented in Chicken Scheme. http://www.omnigia.com/scheme/duggfs/ It lets you view Digg content as a filesystem: $ ls /tmp/duggfs config stories users $ cd /tmp/duggfs/stories/topics/programming/popular $ ls A_Computer_Scie

Re: [Chicken-users] a file system using Chicken

2007-06-06 Thread Mario Domenech Goulart
Hi Dan, On Wed, 06 Jun 2007 22:05:21 +0300 Dan Muresan <[EMAIL PROTECTED]> wrote: > I've released DuggFS, a file system based on Fuse and implemented in > Chicken Scheme. A m a z i n g! Very cool idea. :-) I'm facing some problems to compile duggfs: $ ./setup.sh Enter your host name (used for

Re: [Chicken-users] a file system using Chicken

2007-06-06 Thread Ivan Raikov
I second Mario, that is really an amazing idea; filesystems implemented in high-level languages have been a long-time fascination of mine. Would it be possible for you to release the libfuse Chicken wrapper as a standalone egg? -Ivan Mario Domenech Goulart <[EMAIL PROTECTED]> writes: > Hi D

Re: [Chicken-users] a file system using Chicken

2007-06-06 Thread Dan Muresan
fuse_mod_wrap.c: In function '_wrap_fuse_main_real': fuse_mod_wrap.c:5204: warning: passing argument 3 of 'fuse_main_real' from incompatible pointer type fuse_mod_wrap.c:5204: error: too few arguments to function 'fuse_main_real' *** Shell command terminated with exit status 1: gcc fuse_mod_wrap.

Re: [Chicken-users] a file system using Chicken

2007-06-06 Thread Dan Muresan
I second Mario, that is really an amazing idea; filesystems implemented in high-level languages have been a long-time fascination of mine. Would it be possible for you to release the libfuse Chicken wrapper as a standalone egg? Thanks for the kind words, Mario and Ivan. It would be possible,

Re: [Chicken-users] a file system using Chicken

2007-06-06 Thread Ivan Raikov
Okay, that's reasonable. I was under the impression that the fuse API is relatively fixed, now that it has been included in the Linux kernel, and Debian stable actually includes a somewhat recent version (2.5.something, I think), but if you feel that the dust hasn't settled yet, I can wait or us

Re: [Chicken-users] a file system using Chicken

2007-06-06 Thread felix winkelmann
On 6/7/07, Dan Muresan <[EMAIL PROTECTED]> wrote: > fuse_mod_wrap.c: In function '_wrap_fuse_main_real': > fuse_mod_wrap.c:5204: warning: passing argument 3 of 'fuse_main_real' from incompatible pointer type > fuse_mod_wrap.c:5204: error: too few arguments to function 'fuse_main_real' > *** Shel

Re: [Chicken-users] a file system using Chicken

2007-06-07 Thread Arto Bendiken
I second the previous accolades. As it happens, I had also started work on a FUSE egg some time back, but didn't get very far beyond the hellofs stage due to work pressures. I'm very much looking forward to throwing my code away and using yours :-) On 6/7/07, Dan Muresan <[EMAIL PROTECTED]> wrote

Re: [Chicken-users] a file system using Chicken

2007-06-07 Thread Dan Muresan
Thanks Arto. Also, the existing FUSE bindings for Ruby and Python appear to have achieved stability on a number of platforms and may be worth looking at for tips and tricks. I'm not so sure about that. I distinctly remember it was a bitch to compile a Python-based filesystem (something along

Re: [Chicken-users] a file system using Chicken

2007-06-08 Thread Matthew Welland
On Thursday 07 June 2007 01:34:42 pm Dan Muresan wrote: > Thanks Arto. > > > Also, the existing FUSE bindings for Ruby and Python appear to have > > achieved stability on a number of platforms and may be worth looking > > at for tips and tricks. Perhaps also look at the stklos fuse implemention:

Re: [Chicken-users] a file system using Chicken

2007-06-09 Thread Dan Muresan
Also, does chicken have native threads available? I'm under the impression that native threads are needed if you want multiple processes to be accessing files on a fuse fs simultaneously. Stklos does native threads but I wasn't able to get the stklos/fuse package to compile/install on my system

Re: [Chicken-users] a file system using Chicken

2007-06-09 Thread Kon Lovett
On Jun 8, 2007, at 9:10 PM, Matthew Welland wrote: On Thursday 07 June 2007 01:34:42 pm Dan Muresan wrote: Thanks Arto. Also, the existing FUSE bindings for Ruby and Python appear to have achieved stability on a number of platforms and may be worth looking at for tips and tricks. Perhaps a

Re: [Chicken-users] a file system using Chicken

2007-06-09 Thread Zbigniew
Hi Dan, You mention on your webpage that "Scheme functions cannot serve as C callbacks" ... was the showstopper the multithreaded -> cooperative-threaded impedance difference, or was there another issue with calling back into Scheme from C? On 6/9/07, Dan Muresan <[EMAIL PROTECTED]> wrote: My f

Re: [Chicken-users] a file system using Chicken

2007-06-09 Thread Dan Muresan
You mention on your webpage that "Scheme functions cannot serve as C callbacks" ... was the showstopper the multithreaded -> cooperative-threaded impedance difference, or was there another issue with calling back into Scheme from C? Not really. I said that Scheme functions cannot serve as C call

Re: [Chicken-users] a file system using Chicken

2007-06-09 Thread Dan Muresan
Hi, I've updated duggfs to address the compilation errors reported by Felix and Mario. I have taken a different approach by no longer attempting to get through SWIG. This loses some functionality, but I believe it's the only workable solution. I kindly ask those who reported errors (as well

Re: [Chicken-users] a file system using Chicken

2007-06-09 Thread Matthew Welland
If I install as duggfs comes out of the box it fails per the listing below. I changed the errno.i target in the makefile to: errno.i: ./gen_errno.sh >errno.i || $(RM) -f errno.i and made gen_errno.sh executable and now it builds for me. I'm now having permission problems when running:

Re: [Chicken-users] a file system using Chicken

2007-06-09 Thread Dan Muresan
errno.i: ./gen_errno.sh >errno.i || $(RM) -f errno.i Another dash/bash problem on Debian or Ubuntu. I used the "source" command to load a script in the current shell, and presumably this is not POSIX, so dash (the default /bin/sh since last year) refuses it. Does anyone know the POSIX

Re: [Chicken-users] a file system using Chicken

2007-06-09 Thread Matthew Welland
On Saturday 09 June 2007 08:29:40 pm Dan Muresan wrote: > > errno.i: > > ./gen_errno.sh >errno.i || $(RM) -f errno.i > > Another dash/bash problem on Debian or Ubuntu. I used the "source" > command to load a script in the current shell, and presumably this is > not POSIX, so dash (the defau

Re: [Chicken-users] a file system using Chicken

2007-06-09 Thread Dan Muresan
Hi Matt, Glad to hear it finally worked. Remaining problem: all the files are owned by root with group root and some are not world readable. Unreadable directories are so by design. I've just put up a note on the duggfs homepage. [EMAIL PROTECTED]:/tmp/duggfs$ ls -l total 0 drwxrwxrwx 2

Re: [Chicken-users] a file system using Chicken

2007-06-09 Thread Ivan Shmakov
"DM" == Dan Muresan <[EMAIL PROTECTED]> writes: >> errno.i: >> ./gen_errno.sh >errno.i || $(RM) -f errno.i DM> Another dash/bash problem on Debian or Ubuntu. I used the "source" DM> command to load a script in the current shell, and presumably this DM> is not POSIX, so dash (the default /bin/s

Re: [Chicken-users] a file system using Chicken

2007-06-10 Thread Peter Bex
On Sat, Jun 09, 2007 at 09:43:33PM -0700, Matthew Welland wrote: > On Saturday 09 June 2007 08:29:40 pm Dan Muresan wrote: > > > errno.i: > > > ./gen_errno.sh >errno.i || $(RM) -f errno.i > > > > Another dash/bash problem on Debian or Ubuntu. I used the "source" > > command to load a script

Re: [Chicken-users] a file system using Chicken

2007-06-10 Thread Dan Muresan
Not really. It is in the Linux world, but outside that, there are lots of Unices that don't come with Bash. In fact, one of the things that are most annoying to Unix people who don't use Linux is the widespread hidden assumption that /bin/sh points to bash. The fact that bash doesn't act like a

Re: [Chicken-users] a file system using Chicken

2007-06-10 Thread Peter Bex
On Sun, Jun 10, 2007 at 03:30:15PM +0300, Dan Muresan wrote: > While I understand the spirit of POSIX advocacy, note that this thread > is about a Linux file system. Also, care to share the concrete solution > in this case? What's the POSIXly correct way to load a script in the > current shell (

Re: [Chicken-users] a file system using Chicken

2007-06-10 Thread Dan Muresan
On Sun, Jun 10, 2007 at 03:30:15PM +0300, Dan Muresan wrote: While I understand the spirit of POSIX advocacy, note that this thread is about a Linux file system. Also, care to share the concrete solution in this case? What's the POSIXly correct way to load a script in the current shell ("." or

Re: [Chicken-users] a file system using Chicken

2007-06-10 Thread Peter Bex
On Sun, Jun 10, 2007 at 03:54:50PM +0300, Dan Muresan wrote: > > How about $(cat filename) or `cat filename`? > > No. I'm surprised you've never run across the "source" or "." commands, > they're fairly common. They execute execute scripts in the current shell > (as opposed to spawning a new she

Re: [Chicken-users] a file system using Chicken

2007-06-10 Thread John Cowan
Peter Bex scripsit: > > No. I'm surprised you've never run across the "source" or "." commands, > > they're fairly common. They execute execute scripts in the current shell > > (as opposed to spawning a new shell process). They're essential when you > > want a script to modify the environment o

Re: [Chicken-users] a file system using Chicken

2007-06-10 Thread John Cowan
Dan Muresan scripsit: > While I understand the spirit of POSIX advocacy, note that this thread > is about a Linux file system. Also, care to share the concrete solution > in this case? What's the POSIXly correct way to load a script in the > current shell ("." or "source" in bash, neither of wh

Re: [Chicken-users] a file system using Chicken

2007-06-10 Thread Dan Muresan
I looked a little further, and dash(1) says it supports dot. Turns out you're right; however, it seems that "the dot" is somehow affected by PATH considerations, so . setup.sh does not work, yet . ./setup.sh does work. Which is pretty strange; I expected dot to look in the current directo

Re: [Chicken-users] a file system using Chicken

2007-06-10 Thread John Cowan
Dan Muresan scripsit: > I expected dot to look in the current directory by default, and to > ignore the PATH. Nope. Posix says: # If file does not contain a slash, the shell shall use the search # path specified by PATH to find the directory containing file. Unlike # normal command

Re: [Chicken-users] a file system using Chicken

2007-06-10 Thread felix winkelmann
On 6/10/07, Dan Muresan <[EMAIL PROTECTED]> wrote Hi, I've updated duggfs to address the compilation errors reported by Felix and Mario. I have taken a different approach by no longer attempting to get through SWIG. This loses some functionality, but I believe it's the only workable solution.

Re: [Chicken-users] a file system using Chicken

2007-06-11 Thread Mario Domenech Goulart
Hi Dan, On Sun, 10 Jun 2007 02:22:51 +0300 Dan Muresan <[EMAIL PROTECTED]> wrote: > I've updated duggfs to address the compilation errors reported by > Felix and Mario. I have taken a different approach by no longer > attempting to get through SWIG. This loses some > functionality, but I believe

Re: [Chicken-users] a file system using Chicken

2007-06-11 Thread Harri Haataja
On 07/06/07, Ivan Raikov <[EMAIL PROTECTED]> wrote: Okay, that's reasonable. I was under the impression that the fuse API is relatively fixed, now that it has been included in the Linux kernel, and Debian stable actually includes a somewhat recent version (2.5.something, I think), There shoul

Re: [Chicken-users] a file system using Chicken

2007-06-11 Thread Dan Muresan
On a Xubuntu machine (where I first tried duggfs) it's now building ok, but I get an error when running start_duggfs.sh: $ ./start_duggfs.sh /tmp/duggfs To unmount, type "fusermount -u /tmp/duggfs" $ Error: (string-ref) bad argument type: # This is probably not related to fuse. Unfortunately t

Re: [Chicken-users] a file system using Chicken

2007-06-11 Thread Mario Domenech Goulart
Hi Dan, On Mon, 11 Jun 2007 17:41:38 +0300 Dan Muresan <[EMAIL PROTECTED]> wrote: > > On a Xubuntu machine (where I first tried duggfs) it's now building > > ok, but I get an error when running start_duggfs.sh: > > $ ./start_duggfs.sh /tmp/duggfs > > To unmount, type "fusermount -u /tmp/duggfs"

Re: [Chicken-users] a file system using Chicken

2007-06-11 Thread Dan Muresan
Mario discovered that his problems were (most likely) due to an unstable url egg. As of now, there are no other active complaints about duggfs not building. Hopefully this will stay true :) A few of you have mentioned their past interest in using Scheme for a filesystem. Out of curiosity, what

Re: [Chicken-users] a file system using Chicken

2007-06-11 Thread Matthew Welland
On Monday 11 June 2007 10:33:03 am Dan Muresan wrote: > Mario discovered that his problems were (most likely) due to an unstable > url egg. As of now, there are no other active complaints about duggfs > not building. Hopefully this will stay true :) > > A few of you have mentioned their past intere

Re: [Chicken-users] a file system using Chicken

2007-06-11 Thread felix winkelmann
On 6/11/07, Dan Muresan <[EMAIL PROTECTED]> wrote: Mario discovered that his problems were (most likely) due to an unstable url egg. As of now, there are no other active complaints about duggfs not building. Hopefully this will stay true :) It works for me now too. Incredible! A few of you h

Re: [Chicken-users] a file system using Chicken

2007-06-11 Thread Ivan Raikov
Me too! ;-) - developing a Scheme-based domain-specific language for implementing secure/safe/guaranteed-integrity filesystems, using techniques like the various secure proof-carrying calculi - developing file-systems optimized for reading and writing particular types of data structures, w

Re: [Chicken-users] a file system using Chicken

2007-06-12 Thread Joerg F. Wittenberger
> "felix winkelmann" <[EMAIL PROTECTED]> writes: > > >> > >> A few of you have mentioned their past interest in using Scheme > >> for a filesystem. Out of curiosity, what ideas did you guys have > >> in mind? I must have missed that post. This is, when I *must* put in my shameless plug about hav

Re: [Chicken-users] a file system using Chicken

2007-06-12 Thread Ivan Raikov
Ah, the infamous Askemos. I am aware of it, of course, and it is a very impressive work. If I ever get to work on a similar project, I will probably borrow many ideas from Askemos (if not use it wholesale), but I am specifically interested in using advanced programming language techniques (like