L'exemple microkernel vs monolytique n'est pas une bonne analogie. A ma connaissance, l'état de l'art sur les systèmes a micronoyaux n'a pas encore depassé celui des architectures monolithiques mis a part dans certains domaines très précis mais pas de manière générale. Alors que ca fait de nombreuses années que les concepts comme les generics, types somme, etc sont matures. Très rares sont aujourdh'ui les langages typés sans polymorphisme paramétrique.
Opposer théorie et pratique n'a pas de sens. De plus en plus de programmeuses et programmeurs s'interessent a la théorie des types, a celle des catégories, aux systèmes de types affines (a la rust), etc. On ne compte plus le nombre d'articles de blog, de talk ou de livres sur les monades dans tel ou tel langage. On voit de plus en plus de talks d'introduction aux catégories dans des conférences de langages ou de livres a destination des programmeuses.eurs (cf celui de Bartosz Milewski), de nouveaux langages chechant a formaliser les effets ou verifier statiquement la justesse des allocations mémoires et accès concurents. Et bien sur aussi les langages a types dépendants qui gagnent en maturité.
Tout ceci n'est pas un hasard, toutes ces avancés améliorent la productivité. Au rythme ou vont les choses, ils sera de moins en moins justifiable d'avoir des segfault par exemple. Certes ces nouveaux outils impliquent un cout non négligeable de formation, mais a choisir en entre cout de formation et cout en QA ou debugging, le choix sera vite fait. Payer des journées de dev pour coder ce qui pourrait se faire automatiquement avec des langages modernes ou a débugger des data race alors que le compilo pourrait en garantir l'absence a chaque build sera une position de plus en plus dur a justifier.
[^] # Re: go 2.0
Posté par GTof . En réponse au journal Pourquoi la recherche en langages de programmation ?. Évalué à 2.
L'exemple microkernel vs monolytique n'est pas une bonne analogie. A ma connaissance, l'état de l'art sur les systèmes a micronoyaux n'a pas encore depassé celui des architectures monolithiques mis a part dans certains domaines très précis mais pas de manière générale. Alors que ca fait de nombreuses années que les concepts comme les generics, types somme, etc sont matures. Très rares sont aujourdh'ui les langages typés sans polymorphisme paramétrique.
Opposer théorie et pratique n'a pas de sens. De plus en plus de programmeuses et programmeurs s'interessent a la théorie des types, a celle des catégories, aux systèmes de types affines (a la rust), etc. On ne compte plus le nombre d'articles de blog, de talk ou de livres sur les monades dans tel ou tel langage. On voit de plus en plus de talks d'introduction aux catégories dans des conférences de langages ou de livres a destination des programmeuses.eurs (cf celui de Bartosz Milewski), de nouveaux langages chechant a formaliser les effets ou verifier statiquement la justesse des allocations mémoires et accès concurents. Et bien sur aussi les langages a types dépendants qui gagnent en maturité.
Tout ceci n'est pas un hasard, toutes ces avancés améliorent la productivité. Au rythme ou vont les choses, ils sera de moins en moins justifiable d'avoir des segfault par exemple. Certes ces nouveaux outils impliquent un cout non négligeable de formation, mais a choisir en entre cout de formation et cout en QA ou debugging, le choix sera vite fait. Payer des journées de dev pour coder ce qui pourrait se faire automatiquement avec des langages modernes ou a débugger des data race alors que le compilo pourrait en garantir l'absence a chaque build sera une position de plus en plus dur a justifier.