[Haskell-cafe] Call for GUI examples - Functional Reactive Programming

Tom Murphy amindfv at gmail.com
Mon Jul 11 00:26:16 CEST 2011


Oh! I have a good, small (single-purpose; reusable), useful one!

A text field which tab-completes words or phrases from a dictionary.

Haskeline provides useful (non-FRP) for implementing this, but it
seems like FRP could handle this in an interesting way.

Tom

On 7/10/11, Heinrich Apfelmus <apfelmus at quantentunnel.de> wrote:
> Henning Thielemann wrote:
>> Heinrich Apfelmus wrote:
>>
>>> Question: how would you actually like to describe the guitar simulator
>>> at a high-level? Did you already wish for some specific combinators?
>>> Assume that you had something like reactive-banana available and
>>> imagine that there were a benevolent djinn granting you three new
>>> primitive combinators of your choice.
>>
>> If I would know of appropriate combinators, I would just implement them
>> and not ask the djinn. :-)
>
> Fair enough. :D
>
> How did you do it with lazy lists? The more I think about it, the more I
> come to the conclusion that it's impossible to implement this without
> duplicating the event data type. As said, the main problem is that you
> want a combinator
>
>     append :: Pattern -> Pattern -> Pattern
>
> that plays the second pattern (event sequence, the guitar strum) right
> after the first one. This means that patterns are *finite*, but this
> seems to collide with the requirement that any FRP style  Event  must be
> potentially infinite.
>
> Once you do implement a small DSL for patterns, everything is fine,
> though, as the Wave.hs example demonstrates.
>
>
> Best regards,
> Heinrich Apfelmus
>
> --
> http://apfelmus.nfshost.com
>
>
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>



More information about the Haskell-Cafe mailing list