Je prend le cas du système d'exploitation pour deux raisons, d'abord parce que je le connaît bien, et d'autre part parce que ça couvre déjà pas mal de choses: noyau, drivers, librairies, applications.
Mais on est d'accord, j'ai une vue très "système" sur les choses, et c'est ça qui fait de C++ un bon choix pour moi. Certainement pas un langage universel.
Pour la transpilation, ça ne me paraît pas être un problème (pas plus que la compilation). Mes interrogations portent sur le langage, plutôt que sur la façon dont il est exécuté. Par exemple, pour faire de la programmation système en Java, il y a plein de problèmes lié au langage lui-même. Au hasard, pas de pointeurs et donc pas de moyen d'accéder directement à une adresse mémoire, donc pas possible d'écrire un driver; le langage a besoin d'un garbage collector qui peut difficilement être écrit en Java, etc.
Cela dit, il y a d'autres raisons qui font que la transpilation rend les choses pénibles: c'est chiant à debugger, c'est moins pratique pour développer les choses, etc. Et donc, on a bien besoin d'un ou plusieurs langages complémentaires pour ces cas là, merci pour les exemples!
[^] # Re: Donc pour résumer...
Posté par pulkomandy (site web personnel, Mastodon) . En réponse à la dépêche C++17, Genèse d’une version mineure. Évalué à 1.
Merci pour ces exemples.
Je prend le cas du système d'exploitation pour deux raisons, d'abord parce que je le connaît bien, et d'autre part parce que ça couvre déjà pas mal de choses: noyau, drivers, librairies, applications.
Mais on est d'accord, j'ai une vue très "système" sur les choses, et c'est ça qui fait de C++ un bon choix pour moi. Certainement pas un langage universel.
Pour la transpilation, ça ne me paraît pas être un problème (pas plus que la compilation). Mes interrogations portent sur le langage, plutôt que sur la façon dont il est exécuté. Par exemple, pour faire de la programmation système en Java, il y a plein de problèmes lié au langage lui-même. Au hasard, pas de pointeurs et donc pas de moyen d'accéder directement à une adresse mémoire, donc pas possible d'écrire un driver; le langage a besoin d'un garbage collector qui peut difficilement être écrit en Java, etc.
Cela dit, il y a d'autres raisons qui font que la transpilation rend les choses pénibles: c'est chiant à debugger, c'est moins pratique pour développer les choses, etc. Et donc, on a bien besoin d'un ou plusieurs langages complémentaires pour ces cas là, merci pour les exemples!