Hi Tom!<br><br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">
</div><p>[...] <br></p><div class="im">
&gt;<br>
&gt;<br>
&gt; Currently I&#39;m using a monad that combines Parsec (with MIDI event stream) and a Writer (that writes commands that should result in IO). It&#39;s done in a way that during running the monad, many parses can be done and failing parses roll back the parser state so that a new parse can be tried.<br>


&gt;</div>
<p> <br>
Care to share your code?</p></blockquote><br></div>Yes, great! Have you worked with MIDI in Haskell? Perhaps parsing/recognizing it? I think it will take a few more days (hopefully not weeks) until I know what will be the foundation for my app. But then I will create a project online and send you a message.<br>
In case anybody has time to look at it, I just pasted my aforementioned monad on hpaste. I thought about it some more and came to the conclusion that for user-defined &quot;triggers&quot; (aka parsers), this approach is probably sub optimal...<br>
After Heinrich&#39;s suggestion, I worked through the slot machine example from reactive-banana. It&#39;s a great introduction to FRP for me. The declarative style is very appealing. I will try how it fits with my ideas.<br>
<br>Some of my code (thaugh probably obsolete): <a href="http://hpaste.org/55795">http://hpaste.org/55795</a><br><br>Regards<br>Tim<br><br>