Salut Uther. On est pas obligé d'être d'accord, mais c'est sympa de pouvoir dialoguer/débattre avec toi.
Je sais, tu l'as dis 10x, j'ai bien vu passer tes réponses. Mais une fois acccepté pour des drivers isolés, ça évoluera et linux deviendra un mixte de code en C et Rust. Une fois le ver dans le fruit, il le mange. On rentre par une petite porte sur le côté, puis ça s'installe partout. C'est peut-etre le danger que resentent les anciens. C'est une situation qui peu étre mal vécue. Ce n'est peut-être pas l'intention de la communauté Rust, mais c'est un reflexe humain.
Oui, dans un monde idéal, ça devrais être le cas, mais la nature humaine étant ce qu'elle est, ce mode "unsafe" sera utilisé plus que nécessaire, volontairement ou pas. Mais je suis d'accord avec toi sur le fait qu'ils "marquent" un code auquel il faut faire attention.
Si un jour on veut remplacer les driver C actuels par des drivers en Rust ça deviendrait un problème
Oui, ça devriendrait un problème, et pour ma part, je pense que ça arrivera.
Belle réplique, ça m'a fait sourire, une réplique à la Audiar. Chapeau l'artiste.
Oui, on peut toujours, mais je reste sur ma position, s'il y a trop de code Rust qui entre dans le linux (quelque soit le niveau), il faudra à l'avenir maintenir cela. Vérification du code de deux langages, ainsi que leur intéractions, donc du travail en plus. Puis, on en a vu passer des langages tentant de "remplacer" C, et ils sont maintenant complètement oubliés.
On ne force personne à se mettre au 'Rust', je suis bien d'accord. Qu'on l'utilise à la place du C dans de nouveau projets, libre à chacuns de choisir ses outils. Mais si on accepte 'Rust' dans la base de code linux, d'autres risques également d'y entrer. Et quoi qu'on en dise, avoir 2 langages dans une même base de code, c'est pour moi une mauvaise idées.
Je confirme, écrire un OS c'est loin d'être compliqué (je l'ai vécu en créant un petit RTOS), quand au développement d'un compilateur, c'est aussi très compliqué une fois qu'on sort des petits exemples qu'on trouve sur le net. Je suis en train d'en construire un "from scratch", pour un nouveau lanagage, pour le fun quand j'ai le temps, et c'est effectivement très difficile, une multitude de petits détails complique les choses.
Mon analogie ne visait personne en particulier, et je n'ai pas envie de rentrer dans un débat "politique" (qui n'a pas ça place ici). Mais force est de constater que faire cohabiter 2 "choses", (ici 2 langages), n'apporte pas forcément une plus-value.
Moi aussi
Yes !
Mais ne dit qu'un jour ce ne sera pas le cas. Le 'C' étant là et pour toujours, c'est une sécurité.
Tant mieux, mais il faut finir ce travail avant de penser à autre chose. Il existe aussi le risque d'un "fork", où on aurait d'un côté un "linux" avec une code de base en 'C', et un autre avec dus 'Rust' en plus dedans. Et en y réfléchissant, c'est ce que devrait faire l'équipe 'Rust'. Faire un fork, le remanier comme ils l'entendent, y faire leur changement, puis laisser choisir qui s'oriente vers quoi. On constatera si l'ajout de 'Rust' apporte plus d'avantage que d'inconvéniants, tout en laissant actuellement la base de code linux en pur 'C'
J'ai du mal m'exprimer. Je ne pensait pas une seule seconde à faire tourner linux sur des petits µControlleur. Je disais juste que le 'C' est la seul offre (et parfois même l'aasembleur), et qu'avoir un compilateur 'Rust' pour une grande majorité des µControlleur reste pour le moment un doux fantasme. Qui de toute façon n'apporterait rien, puisque l'on de devra pratiquement tout faire en mode "unsafe".
Oui, rien qu'en regardant la syntaxe, ça saute aux yeux. Et s'il est plus difficile à apprendre que le 'C', les gens resteront sur 'C'. Là on est un peut dans le 'Pourquoi faire simple quand on peut faire compliqué'.
Tu dis: "Si c'était le cas Rust ne serait pas a la mode". et c'est cela qui est le plus a craindre, c'est qu'il ne reste pas "à la mode" (personne ne peut prédire l'avenir). Le 'C', lui, n'est pas une 'mode'.
BàT et merci d'échanger courtoisement.
Peace & Love.
Partager