[Haskell-cafe] Word rigid in "`a' is a rigid type variable..."
allbery.b at gmail.com
Wed Nov 13 17:56:44 UTC 2013
On Wed, Nov 13, 2013 at 12:42 PM, Brandon Allbery <allbery.b at gmail.com>wrote:
> On Wed, Nov 13, 2013 at 12:24 PM, Vlatko Basic <vlatko.basic at gmail.com>wrote:
>> Thanks for explanation. If I understood correctly, 'rigid' refers the
>> requirement, not the type itself.
> I think that more intuitive/understandable would be something like
>> 'b' has too rigid type for 'a' ...
> Not really, unless you're talking about some notion of "types of types"
> (which exists, but not in this way). You're still trying to hold onto some
> notion that `a` is flexible; but the compiler does not care about the kind
> of flexibility you want. You will need to let go of that "flexible" for
> Haskell's type system to make sense.
As an example of this, by the way: your function declaration admits only
two possible definitions, ignoring nontermination. Both of them ignore `a`
entirely, because you can't do *anything* with it. You don't get much more
rigid than being unable to use it at all!
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...
More information about the Haskell-Cafe