• [^] # Re: Expressivité

    Posté par . En réponse au journal Les 7 étapes pour devenir un programmeur Go.. Évalué à 4.

    c'est quand même mieux d'avoir des interfaces, non ?

    Oui, mais justement les .h du C++ ne sont pas des interfaces. Il contiennent par exemple l’implémentation complète des templates alors même que pour utiliser une bibliothèque compilée, les templates ne servent plus à rien : ont ne peut utiliser que ceux qui ont été explicitement construits et toute la machinerie d’automatisation qui va avec est perdue.

    La frontière .h/.cpp actuelle n’est vraiment qu’un reliquat historique, et C++ ne sépare pas bien du tout les interfaces des implémentations, à l’inverse de ce qui se fait dans d’autres langages. Pour parler de ce que je connais, par exemple, l’avant et l’après « contains » d’un module Fortran.