<table cellspacing="0" cellpadding="0" border="0" ><tr><td valign="top" style="font: inherit;"><br><blockquote style="border-left: 2px solid rgb(16, 16, 255); margin-left: 5px; padding-left: 5px;"><div class="plainMail">Did you look at synthesizer ? There is a short introductory file [1].<br>Cheers,<br>Thu<br><br>[1] <a href="http://hackage.haskell.org/packages/archive/synthesizer-core/0.2.1/doc/html/Synthesizer-Plain-Tutorial.html" target="_blank">http://hackage.haskell.org/packages/archive/synthesizer-core/0.2.1/doc/html/Synthesizer-Plain-Tutorial.html</a><br><br></div></blockquote><div class="plainMail">Thanks for the tutorial link. As I'm new to Haskell, these 2 lines got me thinking: "Using plain lists is not very fast" and "Getting real-time performance is mostly an issue of the right signal data structure." What do you use as an efficient byte buffer in a value-oriented language? <br><br>The array tutorial says "Obviously, a naive implementation
 of such an array semantics would be
intolerably inefficient, either requiring a new copy of an array for each
incremental redefinition, or taking linear time for array lookup; thus, serious attempts at using this
approach employ sophisticated static analysis and clever run-time
devices to avoid excessive copying."</div><div class="plainMail"><br></div></td></tr></table><br>