Al momento, ho paura di no. Non ho individuato nemmeno una soluzione ovvia.
This ticket documenta le prospettive per la dichiarazione di tipi di dati, tipo nato, piuttosto che essere tipi di dati con gentilezza che vengono loro attribuiti. Sarebbe del tutto ragionevole che i costruttori di queste cose impacchettino i tipi che si propongono. Non siamo ancora arrivati, ma non sembra così problematico.
I miei occhi hanno un premio maggiore. Vorrei che * fosse un tipo di valori di runtime perfettamente sensato, in modo che il tipo che desideri possa esistere con la promozione come lo abbiamo oggi. Combinatelo con la nozione contrariata di pi
-tipo (astrazione non parametrica sulla porzione di linguaggio che è effettivamente condivisa da tipi e valori) e potremmo ottenere un modo più diretto di creare astrazioni di tipo ad hoc rispetto a Data.Typeable
. Il solito forall
rimarrebbe parametrico.
Gli obiettivi dichiarati di Rich Eisen con il suo progetto GHC dipendente soddisfano anche i tuoi obiettivi? – Carl