
19 Jan
2012
19 Jan
'12
7:11 p.m.
On Thu, Jan 19, 2012 at 15:02, Edward Z. Yang
Oleg has described a grody hack which achieves this effect.
http://okmij.org/ftp/Haskell/types.html#partial-sigs
I agree more first class support for this would be nice.
Edward
That's an amusing hack, but does it provide anything on top of `asTypeOf`? I'd rather write Oleg's first example as, isOrd :: Ord a => a isOrd = undefined asOrd = flip asTypeOf isOrd f x = Just $ asOrd x -- now has type Ord a => a -> Maybe a Actually, using view patterns, one can get closer to the code I wanted to write, f (asOrd -> x) = Just x comp x = do (asOrd -> y) <- return x return y But, ideally, I want type expressions to appear as types, not value functions.