Skip to content

Char kind proposal #3102

@kcsongor

Description

@kcsongor

With ConsSymbol, we now have a way of deconstructing Symbols, but in its current implementation, the resulting head is also a Symbol, and it is only implicitly implied that this will be a single character (it doesn't get solved otherwise).

This is not ideal, as it's not clear from the kind signatures what's happening. My proposal is to introduce a kind Char, which would have literal syntax just like that at the existing value-level Char literals.

With this, the signature of ConsSymbol would be

class ConsSymbol (h :: Char) (t :: Symbol) (s :: Symbol) | h t -> s, s -> h t

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions