ANNOUNCE: GHC 7.0.1 Release Candidate 1

Simon Peyton-Jones simonpj at microsoft.com
Wed Sep 29 22:16:15 EDT 2010


|  Except I don't know how to write a type signature for this.
|  
|  The value 's' passed in is bound by pattern matching on this guy's constructor:
|  
|  data Stream a = forall s. Stream (s -> Step s a) !s Int
|  
|  in the top-level function, so I don't even know if it has a type I can name.

You can bind the type variable using a pattern type signature

	case x of
             Stream fun (state :: s) n -> ...

This should bind the type variable 's'.

Simon


More information about the Glasgow-haskell-users mailing list