On Tue, Dec 9, 2008 at 4:45 PM, stefan kersten <[EMAIL PROTECTED]> wrote: > hi john, > > John Lato wrote: >> Using unsafeFreezeIOCArray and my stream implementation provides the >> fastest version yet, with an average of about 1.9s per run. This is >> in the hsndfile.hs test code as function "test1". >> >> For the record, the stream implementation and fold I'm using are >> copied from Data.ByteString.Lazy. I changed the types to suit this >> code, but that's the source. > > thanks for posting the code. i'm not very convinced of lazy IO, but i'd > be very interested in incorporating an iteratee based approach into > hsndfile. i'm currently finalizing various api changes and extensions > (mostly to do with abstracting both mutable and immutable buffers) and > when i'm done i'll have a look at what you did in hsoundfile-3. > obviously oleg's iteratee code is not hackaged yet, and i couldn't find > it anywhere else, do you have any pointers? > > thanks, > <sk> >
Hi Stefan, It's available at http://okmij.org/ftp/Haskell/Iteratee/ His DEFUN slides and notes, found at http://okmij.org/ftp/Streams.html#iteratee, are also helpful. I think it's pretty obvious how to apply this to hsndfile. However, I just noticed that Oleg has posted a TIFF library using an Iteratee approach. It supports seeking/random access and various other things that directly apply to the matter at hand. Looks like I'll have to do some studying again... http://okmij.org/ftp/Streams.html#random-bin-IO _______________________________________________ haskell-art mailing list haskell-art@lurk.org http://lists.lurk.org/mailman/listinfo/haskell-art