• [^] # Re: Et en plus

    Posté par (site web personnel, Mastodon) . En réponse au lien Java is becoming more like Rust, and I am here for it!. Évalué à -3.

    comment trouves-tu en 2024

    Bien sûr tu n'en trouves pas. Mais tu sais que si tu installe un vieux compilo sur un PC tu pourra compiler ton programme comme on le fait avec n'importe quel programme C/C++ ou autre programme compilé. C'est inhérent aux langages compilés. Généralement ils ont un mode de rétro-compatibilité (-c89 pour comilé un programme C de la norme 1989) et sinon tu peux installer le binaire de 1989 sur un PC récent et le recompilé. Le compilateur n'a pas (ou très difficilement) des failles de sécurité.
    Alors que trouver un compilo Java qui te produit un binaire compatible JVM8 pour un programme Java aux normes de 1990, c'est une autre paire de manche. Je me trompe peut-être mais ça n'existe pas à ma connaissance.

    PS : c'est pire avec un langage interprété comme Python. Il est totalement impossible de faire tourner un programme Python1 sur un Python3.

    Bref, l'idée est de dire que la compatibilité binaire d'un programme compilé, n'est généralement pas un problème.

    En fait le vrai problème, existe : La compatibilité binaire des librairies Rust pour des programme C (l'inverse est moins vrai). Actuellement c'est un point noir pour lequel Google à donné 1 million de dollars mais il sera résolu.
    Mais c'est pire en Java, c'est impossible à ma connaissance: appeler un binaire Java avec un programme C qui a prévu d'appeler un librairie C (Même en le voulant dans le code C, ça doit être bien galère). Et se problème se pose juste parce que l'on veut remplacer C au plus vite morceau par morceau. Ce n'est pas un problème Rust à la base.

    Sous licence Creative common. Lisez, copiez, modifiez faites en ce que vous voulez.