Je joue avec des enveloppes de New Type pour mes index pour éviter les bugs, et j'ai un code comme ceci:Dérivation un type et ses dépendances
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
newtype PersonIdx = PersonIdx Int
deriving (Enum, Eq, Integral, Num, Ord, Real, Show)
Pour tirer Integral
, il faut en tirer toutes ses dépendances comme bien (d'où la liste ci-dessus de type-classes).
Y at-il un moyen de lui faire dériver toutes les dépendances de Integral
avec elle? J'imagine quelque chose comme:
newtype PersonIdx = PersonIdx Int
deriving (Integral(..))
Je me demande s'il y a une raison de principe pour cela, ou simplement que personne n'a implémenté le raccourci en question. – Novelocrat
@Dario: bien que l'on puisse probablement créer quelques raccourcis TH .. – yairchu
C'est un peu dans la philosophie de Haskell que tout soit explicite. Il y a très peu de "raccourcis" dans la langue, et cet exemple ne fait pas exception. – Martijn