I am interested in implementing something like Freer Monads, more Extensible Effects in PureScript, but using rows rather than an open union (I suppose it is possible).
However, I wasn't able to define a kind without foreign import
. I want to be able to do something like:
kind X
data Y :: # X -> Type -> Type
data Z :: X
Is that something I can do or should I look for another approach?