• [^] # Re: Gnirehtet réécrit en Rust

    Posté par (site web personnel, Mastodon) . En réponse au journal Du reverse tethering, en Rust. Évalué à 6.

    Peux-tu donner un exemple plus clair?
    Hormis dans un contexte multithreadé où l'accès à une même zone mémoire peut poser des problèmes,

    Justement, tout l'intérêt de Rust est de pouvoir faire du code MultiThreadé sans risque de problèmes de concurrences.

    C'était ce qui était expliqué dans la dépêche au sujet de Stylo de Firefox: en amenant un moteur CSS multi-threadé, ils avaient besoin d'avoir une assurance que les corrections faites par des centaines de développeurs ne rencontrent pas les problèmes de concurrence. Ils utilisent justement Rust pour avoir cette assurance, car ce langage est capable d'empêcher le développeur de créer du code buggé (d'après leurs discours).

    C'est clair que c'est contraignant, mais les bugs de concurrences sont aussi hyper compliqués à résoudre, car ils dépendent énormément du contexte d'exécution. Ici, Rust fournit un langage plus difficile à appréhender (car il force le développeur à utiliser de nouveaux paradigmes), mais il fournit des concepts qui empêchent l'apparition de ces bugs.