<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">I unfortunately don’t have the exact code I was working on in front of me, but I was playing around with the -XTypeInType extension to see if I could use it to implement some notion of sub-kinding to start doing “Data Types a la Carte” style things at the type level.<div class=""><br class=""></div><div class="">Constrained type families seemed like the most natural way to “promote” those concepts, but maybe there’s a more obvious way I’m missing.</div><div class=""><br class=""></div><div class="">I’d be happy to send you a follow up email tomorrow when I’m back at the office if you think this would be a good motivating use case for the feature.</div><div class=""><br class=""></div><div class=""><br class=""></div><div class="">V/r,</div><div class=""><br class=""></div><div class="">-Evan<br class=""><div class=""><div class=""><br class=""></div><div class=""><br class=""><div><blockquote type="cite" class=""><div class="">On Mar 8, 2016, at 8:21 PM, Richard Eisenberg <<a href="mailto:eir@cis.upenn.edu" class="">eir@cis.upenn.edu</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><meta http-equiv="Content-Type" content="text/html charset=us-ascii" class=""><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; " class=""><div class=""><br class=""></div><div class=""><div class="">On Mar 8, 2016, at 7:17 PM, Evan Austin <<a href="mailto:e.c.austin@gmail.com" class="">e.c.austin@gmail.com</a>> wrote:</div><blockquote type="cite" class=""><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><div class="">The wiki page for Phase I of Dependent Haskell describes an approach to constrained type families:</div><a href="https://ghc.haskell.org/trac/ghc/wiki/DependentHaskell/Phase1#Typefamilyequationscanbeconstrained" class="">https://ghc.haskell.org/trac/ghc/wiki/DependentHaskell/Phase1#Typefamilyequationscanbeconstrained</a><div class=""><br class=""></div><div class="">Did that land in GHC 8.0 and, if so, is the updated syntax documented somewhere?</div></div></blockquote><br class=""></div><div class="">No, it didn't make it. The motivating test case seemed contrived and so we punted on this one.</div><div class=""><br class=""></div><div class="">Do you have a use case that really needs this feature? That would help to motivate it for 8.2 or beyond.</div><div class=""><br class=""></div><div class="">Thanks!</div><div class="">Richard</div><br class=""></div></div></blockquote></div><br class=""></div></div></div></body></html>