[Haskell-cafe] using type variables in type declarations inside function

Dennis Raddle dennis.raddle at gmail.com
Thu Apr 12 20:24:21 UTC 2018


Thanks!

By the way, why do I sometimes have to use forall, and sometimes not?

I'm also learning Purescript, and I noticed that the examples use 'forall'
in every case. Why would it be different with Purescript?
D

On Thu, Apr 12, 2018 at 12:51 PM, Brandon Allbery <allbery.b at gmail.com>
wrote:

> On Thu, Apr 12, 2018 at 3:47 PM, Dennis Raddle <dennis.raddle at gmail.com>
> wrote:
>
>> myFunc :: a -> b -> c
>> myFunc x y z = ...
>>   where
>>     helper :: a -> [b]
>>     helper xx = ...
>>
>> Notice that I'm attempting to declare 'helper' using my type variables.
>> I've noticed that this results in an error.
>> Is this actually possible, and how?
>>
>
> You need the ScopedTypeVariables extension, *and* to "declare" the type
> variables whose scope is to be extended with an explicit "forall" in the
> signature.
>
> --
> brandon s allbery kf8nh                               sine nomine
> associates
> allbery.b at gmail.com
> ballbery at sinenomine.net
> unix, openafs, kerberos, infrastructure, xmonad
> http://sinenomine.net
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20180412/d5ded40f/attachment.html>


More information about the Haskell-Cafe mailing list