Ça permet de lier n'importe quel type "d'entrée" qui respecte certaines propriétés à un type de sortie qui maintient certaines de ces propriétés de manière générique.
Tu peux faire la même chose avec des paramètres de constructeur qui fournissent une classe concrète d'un type abstrait interne, non ? La seul différence est que tu es emmerdé si le type abstrait "ressort" de ta classe, car cela veut dire des casts moche.
Du coup pour ce qui est des passes d'optimisation ça permet de les écrire de manière générique et de les chaîner un peu comme tu veux.
Faut que je rerelise cette partie de toute façon.
Mais ... pour poser ces questions tu as lu les articles non ?
[^] # Re: chaud
Posté par Nicolas Boulay (site web personnel) . En réponse au journal Tagless-final ou l'art de l'interprétation modulaire.. Évalué à 3.
Tu peux faire la même chose avec des paramètres de constructeur qui fournissent une classe concrète d'un type abstrait interne, non ? La seul différence est que tu es emmerdé si le type abstrait "ressort" de ta classe, car cela veut dire des casts moche.
Faut que je rerelise cette partie de toute façon.
Pas tous, non. J'ai déjà du mal avec le tien :)
"La première sécurité est la liberté"