• # Le plus gros défi...

    Posté par . En réponse au journal L'expressivité des langages. Évalué à 2.

    ...est à mon sens la programmation concurrente, ou multithreading en anglais.
    Un bon langage adapté au futur sera un langage qui permette d'écrire "naturellement" des applications multithread, mais je n'en connais pas à l'heure actuelle... (cependant il est vrai que mes connaissances en terme de langages sont limitées)


    Je suis vraiment convaincu par les mérites des langages fonctionnels, mais par exemple OCaml ne permet pas grand-chose dans le domaine du multithreading, hélas. Je ne sais plus très bien où (sur la ML de OCaml il me semble) j'avais vu que les concepteurs du langage sont opposés à ça, tant qu'il n'y a pas de paradigme efficace de programmation concurrente.

    Qu'en est-il ?

    N'y-a-t-il pas au contraire un espoir suscité par les langages fonctionnels ?
    Il me semble en effet qu'un programme écrit d'une certaine façon en fonctionnel peut être parallélisé très facilement, par exemple un truc du genre :

    let rec f l =
    match l with
    |[] -> []
    |x::r -> (quelque_chose x)::(map f r) ;;

    En gros faire du MapReduce...