Skip to content

Named wildcards in kinds

This works:

Prelude> :set -XNamedWildCards -XPartialTypeSignatures -XPolyKinds 
Prelude> k :: (Int :: _); k = 42

<interactive>:2:14: warning: [-Wpartial-type-signatures]
    • Found type wildcard ‘_’ standing for ‘*’
    • In the type signature: k :: (Int :: _)

And this doesn't:

Prelude> k :: (Int :: _t); k = 42

<interactive>:3:7: error:
    • Expected kind ‘_t’, but ‘Int’ has kind ‘*’
    • In the type signature: k :: (Int :: _t)

The issue, I suspect, is in partition_nwcs, which ignores kind variables for some reason.

Edited by Vladislav Zavialov
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information