Re: data-crunching in guile

2009-06-26 Thread Neil Jerram
Andy Wingo writes: > Hi Neil! Hi Andy! > On Fri 26 Jun 2009 00:47, Neil Jerram writes: > >> Thanks, I see now. But presumably even VM code will frequently call >> out to primitives all over libguile, won't it? > > Over time, I'd say no. I see functions written in C migrating over to be > writ

Re: data-crunching in guile

2009-06-26 Thread Andy Wingo
Hi Neil! On Fri 26 Jun 2009 00:47, Neil Jerram writes: > Andy Wingo writes: > >> I don't have Neil's mail open here, but my thought was this: getting a >> fast VM is a dark art of feeling and instinct, My feeling is that a VM >> is fast if it fits in the CPU's cache: the instruction cache and t

Re: data-crunching in guile

2009-06-26 Thread Andy Wingo
Hi, I've gone ahead and added vector and bytevector ops to the VM. That should provide a considerable speedup to programs that use those data structures. As far as brainfuck goes: On Wed 24 Jun 2009 14:03, Andy Wingo writes: > brainfuck@(guile-user)> ,c ++] brainfuck@(guile-user)> ,c

Re: data-crunching in guile

2009-06-25 Thread Neil Jerram
Andy Wingo writes: > I don't have Neil's mail open here, but my thought was this: getting a > fast VM is a dark art of feeling and instinct, My feeling is that a VM > is fast if it fits in the CPU's cache: the instruction cache and the > data cache. The data cache means that smaller code is bette

Re: data-crunching in guile

2009-06-25 Thread Andy Wingo
Howdy, I didn't mean to push those commits I just pushed -- my girlfriend was looking for the web browser, but was on a full-screen Emacs window with magit, and somehow clicking around pushed some commits! Perhaps this is Marius' way of contributing to Guile these days ;-) But I think they might

Re: data-crunching in guile

2009-06-25 Thread Ludovic Courtès
Hi, Andy Wingo writes: > What I'm getting at is that I think we should have VM ops for working on > vectors -- both generic vectors, and specific ops for bytevectors, and > probably an op for string-ref as well, and possibly string-set!. Then a > native code backend could be effectively implemen

Re: data-crunching in guile

2009-06-25 Thread Neil Jerram
Andy Wingo writes: > Hey all, > > I'm pretty displeased about the way that the brainfuck compilation > works. Check this: > > brainfuck@(guile-user)> ,c ++] > > (The trailing ] is to note the end of the program. It's kindof a hack, > but it works fine.) Yes, seems OK. Presumably in real bra