Ça va probablement faire mal à beaucoup mais le fonctionnel a connu un regain d'intérêt avec la montée en puissance de JavaScript, et le fait qu'il autorise du fonctionnel assez simplement et depuis sa naissance. Ça fait un moment que ça fait le buzz dans ce domaine. Douglas Crockford lors de ses conférences passionnantes sur ce langage en parlait déjà en 2010 :
https://yuiblog.com/blog/2010/02/24/video-crockonjs-3/
Des bibliothèques JS comme underscore ou Lodash ont désormais 10 ans ou 7 ans d'ancienneté et étaient déjà tournées vers ce paradigme.
On crache souvent sur le javascript surtout ici mais peu ont conscience de cette capacité à porter certains progrès. Et vu que c'est probablement le langage le plus utilisé au monde...
Perso j'ai appris la récursivité en faisant du PERL il y a plus de 20 ans sur des systèmes unix (AIX en l’occurrence), et j'ai trouvé ça assez génial. Je n'avais absolument pas idée que c'était assez fondamental du fonctionnel.
J'ai depuis ce moment toujours utilisé ce type d'algo quand je le pouvais, et je me foutais bien du fonctionnel ou non. Le problème majeur est que le résultat est craché à la dernière itération, à la sortie de la récursion, et il y a 20 ans c'était drôlement sensible, surtout sur des systèmes partagés. C'est juste simple et évident à écrire
Quand à cette époque j'ai appris (ou abordé plutôt) les 3 paradigmes évoqués, via 3 ou 4 langages (VB pour le procédural, PERL et javascript autorisant le fonctionnel, java pour l'objet) l'objet m'a semblé le moins naturel tel qu'il se présente en java. Le fonctionnel a un coté naturel, comme l'impératif ou le procédural.
La programmation objet pure pose des problèmes d'organisation mentale basique que ne pose pas les autres paradigmes : Où je mets mes méthodes ? A quel objet ou classe quand ces méthodes peuvent justement s'appliquer à plusieurs. Parfois ça peut paraitre évident, parfois absolument pas
Bon le fait d'avoir écrit JS va surement m'attirer beaucoup de critiques, mais que je crois que la réalité est là, et que cela part de la popularité de ce langage, dans le monde anglo-saxon évidemment.
Partager