• [^] # Re: Logiciels libres

    Posté par . En réponse à la dépêche Agrégation et logiciels libres. Évalué à 1. Dernière modification le 11 avril 2015 à 08:38.

    Le seul succès d'un langage fonctionnel que je connais en HPC, c'est la bibliothèque FFTW. C'est une excellente bibliothèque pour calculer des transformées de Fourier rapide. Ils ont utilisé OCaml non pas pour la bibliothèque mais pour générer du code C qui constitue la bibliothèque.

    Allez voir http://benchmarksgame.alioth.debian.org qui est a ma connaissance la meilleure comparaison de performance entre les implémentations des différents langages (cela a bien sur des défauts, mais c'est difficile de faire mieux). Le Haskell et l'Ocaml se prennent un facteur 2 en moyenne face au C/C++/Fortran.

    Si certains qui font du High Frequency Trading utilisent des langages fonctionnels, c'est qu'ils font souvent du code "jetable". Le code doit être : rapide, correct et développé rapidement. C'est la partie "correct" et "développé rapidement" qui les poussent vers les langages fonctionnels, pas la rapidité. Bien sur si ils se prenaient un facteur 100 par rapport au C, cela leur poserait problème, mais ils sont prêt à se prendre un facteur 2.

    Les langages fonctionnels seront plus rapide que le C/C++/Fortran le jour où les compilateurs auront une vision globale du code meilleure qu'un bon programmeur. Autant, sur une vision locale, les compilateurs sont bien meilleurs que n'importe quel humain, sur une vision globale, ils sont complètement myopes.