[Haskell-cafe] Combining Network Descriptions in Reactive.Banana
sjoerd at w3future.com
Wed Jun 27 21:03:43 CEST 2012
That is the same as just
library :: NetworkDescription t (Behavior t String) -> IO ()
which means that the caller gets to pick which type "t" stands for. But with this:
library :: (forall t. NetworkDescription t (Behavior t [Char])) -> IO ()
the caller is forced to pass a value that works for any type t, and the library function gets to choose.
On Jun 27, 2012, at 8:57 PM, Alexander Foremny wrote:
> Sweet! Thank you very much!
> Just out of curiosity: how does this differ from the following, not
> compiling type signature?
>> library :: forall t. NetworkDescription t (Behavior t String) -> IO ()
> Alexander Foremny
> 2012/6/27 Sjoerd Visscher <sjoerd at w3future.com>:
>> This should work:
>> library :: (forall t. NetworkDescription t (Behavior t [Char])) -> IO ()
>> On Jun 27, 2012, at 4:39 PM, Alexander Foremny wrote:
>>> Hello list,
>>> I am currently experimenting with Reactive.Banana and I am trying to
>>> write a program that simply displays a String which is supplied by the
>>> user. Thus in Main.hs I'd like to create a Behavior t String from some
>>> arbitrary sources and pass this to a library function performing the
>>> printing. However, I am not able to get the desired behavior of my
>>> program. A sample Main.hs is available as Gist .
>>> The cause of error appears to be that the type t over which
>>> NetworkDescription and Behavior are parameterized are distinct! I
>>> tried several variations of the code in  using
>>> ExistentialQuantification over t and/or giving explicit type
>>> signatures. The error is slightly different in each case, but always
>>> boils down to the same reason.
>>> In case explicit error messages are required I can post them to the list.
>>> Any insight into this would be of great help. And additionally I'd be
>>> interested if this kind of program is possible with Reactive.Banana at
>>>  https://gist.github.com/3004430
>>> Haskell-Cafe mailing list
>>> Haskell-Cafe at haskell.org
>> Sjoerd Visscher
>> Haskell-Cafe mailing list
>> Haskell-Cafe at haskell.org
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
More information about the Haskell-Cafe