
#10794: Extension request: "where" clauses in type signatures -------------------------------------+------------------------------------- Reporter: danso | Owner: Type: feature request | Status: new Priority: lowest | Milestone: Component: Compiler (Type | Version: 7.10.2 checker) | Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Revisions: -------------------------------------+------------------------------------- Comment (by nomeata): {{{#!hs fold :: f -> [a] -> a where f :: a -> a -> a }}} is certainly confusing, because in the first line `f` is used like a type, but in the second, `f` is used like a value (or `a -> a -> a` is used like a kind Maybe you meant {{{#!hs fold :: f -> [a] -> a where f = a -> a -> a }}} which could be extended to allow {{{#!hs fold :: f -> [a] -> a where f :: * f = a -> a -> a }}} I’m sure the type level programming wizards and dependently typed programmers will have the greatest need for such an extension, and have a good opinion here. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10794#comment:1 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler