[Haskell-cafe] Reply-To: Header in Mailinglists (was: About "Fun with type functions" example)

Bastian Erdnüß earthnut at web.de
Thu Nov 18 22:55:20 EST 2010

Hi there,

I just put an answer two this in beginners at haskell.org.  It was not on purpose to move the topic.  It's just that questions I feel I can answer are usually beginner level questions and so I'm not often writing in the cafe itself.

It would make my life a little bit more easy if the mailing lists on haskell.org would add a Reply-To: header automatically to each message containing the address of the mailing list, the message was sent to.  Usually that's the place where others would want to sent the answers to, I would suppose.

Is there a reason that that's not the case?  Am I missing something?  Or am I supposed to install a more cleaver mail client which can do that for me?  Is there one?  Probably written in Haskell ;-)


On Nov 19, 2010, at 1:07, Daniel Peebles wrote:

> The best you can do with fromInt is something like Int -> (forall n. (Nat n)
> => n -> r) -> r, since the type isn't known at compile time.
> On Thu, Nov 18, 2010 at 2:52 PM, Arnaud Bailly <arnaud.oqube at gmail.com>wrote:
>> Thanks a lot, that works perfectly fine!
>> Did not know this one...
>> BTW, I would be interested in the fromInt too.
>> Arnaud
>> On Thu, Nov 18, 2010 at 8:22 PM, Erik Hesselink <hesselink at gmail.com>
>> wrote:
>>> On Thu, Nov 18, 2010 at 20:17, Arnaud Bailly <arnaud.oqube at gmail.com>
>> wrote:
>>>> Hello,
>>>> I am trying to understand and use the Nat n type defined in the
>>>> aforementioned article. Unfortunately, the given code does not compile
>>>> properly:
>>> [snip]
>>>> instance (Nat n) => Nat (Succ n) where
>>>> toInt   _ = 1 + toInt (undefined :: n)
>>> [snip]
>>>> And here is the error:
>>>> Naturals.hs:16:18:
>>>>   Ambiguous type variable `n' in the constraint:
>>>>     `Nat n' arising from a use of `toInt' at Naturals.hs:16:18-39
>>>>   Probable fix: add a type signature that fixes these type variable(s)
>>> You need to turn on the ScopedTypeVariables extension (using {-#
>>> LANGUAGE ScopedTypeVariables #-} at the top of your file, or
>>> -XScopedTypeVariables at the command line). Otherwise, the 'n' in the
>>> class declaration and in the function definition are different, and
>>> you want them to be the same 'n'.
>>> Erik
>> _______________________________________________
>> Haskell-Cafe mailing list
>> Haskell-Cafe at haskell.org
>> http://www.haskell.org/mailman/listinfo/haskell-cafe
> _______________________________________________
> 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