Haskell, o un compilatore specifico, ha qualcosa come lambda di tipo di livello (se è addirittura un termine)?Lambda per le espressioni di tipo in Haskell?
Per elaborare, dire che ho un tipo parametrizzato Foo a b
e voglio che Foo _ b
sia un'istanza di, diciamo, Functor. C'è qualche meccanismo che mi permetterebbe di fare qualcosa di simile a
instance Functor (\a -> Foo a b) where
...
?
Un "lambda a livello di testo" potrebbe essere una funzione che accetta un tipo e restituisce un altro tipo? – Gabe
@Gabe che è un sinonimo di tipo; ma non puoi trasformarlo in un lambda applicandolo parzialmente. –