> data F = MkF t -> t -- did I get the syntax right?
Almost
data F = MkF (t -> t)
>
> foo :: (Int, String, F) -> (Int, String)
> foo (i, s, MkF f) = (f i, f s)
In fact, this extension has been implemented in Hugs
and ghc as well as I understand it, but neither of these
implementations have been made publically available.
-- Lennart
- polymorphic higher-order terms Fergus Henderson
- Re: polymorphic higher-order terms Fergus Henderson
- Re: polymorphic higher-order terms Lennart Augustsson
- Re: polymorphic higher-order terms Simon L Peyton Jones
