# Feedback requested about breakage: type variable binders in datatypes

**URL:** <https://discourse.haskell.org/t/feedback-requested-about-breakage-type-variable-binders-in-datatypes/4241>\
**Category:** Uncategorized\
**Created:** [March 21, 2022, 9:03pm UTC](https://discourse.haskell.org/t/feedback-requested-about-breakage-type-variable-binders-in-datatypes/4241 "2022-03-21T21:03:42Z")\
**Posts on this page:** 1\
**Page:** 2

<div class="post-metadata">

**Author:** ![rae](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/rae/32/888_2.png) [@rae](https://discourse.haskell.org/u/rae)\
**Post date:** [March 30, 2022, 12:55pm UTC](https://discourse.haskell.org/t/feedback-requested-about-breakage-type-variable-binders-in-datatypes/4241/22 "2022-03-30T12:55:06Z")

</div>

I’m sensitive to @ketzacoatl’s worries about complexity. It’s hard for me to say whether this proposal improves or worsens the situation. By forcing more things to be explicit, I like to think this proposal aids readability. At the same time, it introduces new features into code that previously lived without them, which means readers get exposed earlier – perhaps a bad thing. My instinct is that this proposal offers a net benefit, but I don’t know this for sure.

I’d also like to say that some of the “reduce barriers to real work” responsibility rests with library authors: nothing is stopping libraries from making Haskell98 (or similar) interfaces, making it easier for clients to use the libraries without learning more complicated topics.

@Tarmean: the kind instantiation must be discovered by looking at the left-hand sides, so both of the examples you write would continue to be accepted. The feature we’re eliminating is allowing the right-hand side to affect the left.

[Previous page](https://discourse.haskell.org/t/feedback-requested-about-breakage-type-variable-binders-in-datatypes/4241.md?page=1)
