Tu me fais dire ce que je n'ai pas dit. J'ai dit qu'avec les langages de haut niveau qui font de l'absraction on pouvait aller plus vite pour coder, j'ai pas dit que les machines devait être 10x plus puissantes. Pour java sa lenteur réside dans le fait que les prog tournes sur une VM mais je vais pas trop parler de Java, je ne m'y connais pas assez et je risque de dire des conneries. Je vais encore une fois parler de O'Caml (décidément aujourd'hui j'arrête pas, désolé), sous forme de bytecode les programmes sont effectivement lents, mais sous forme native les programmes sont en moyenne 5 fois plus rapides et rivalisent avec le C, il suffit de voir http://shootout.alioth.debian.org/great/benchmark.php?test=all&(...) pour s'en convaincre. Pourtant en O'Caml même avec la couche impérative tu n'a pas de pointeurs du tout, le langage gère l'allocation mémoire tout seul comme un grand. Forcément si tu n'a plus à gèrer la mémoire ca fait des choses en moins a coder pour une même tâche donc c'est effectivement plus rapide. De plus comme c'est le compilateur qui gère la mémoire, si celui ci est correcte tu peut garantir que la mémoire sera bien géré dans ton programme, ce qui effectivement réduit la liste des bugs possibles.
Puis aller plus vite pour coder une tâche ne sinifie pas mettre deux fois moins de temps au total car tu peux peux profiter du temps que tu as gagné pour mieux penser ton programme et ses algorithmes. Dans un programme une améloiration d'un algorithme est souvent bien plus efficace qu'une maipulation astucieuse de la mémoire ou du processeur. De plus si on prend le compilateur d'O'Caml, il optmise pas mal et rien ne dit qu'a la main tu fasses mieux que lui.
J'ai envie de faire une anlalogie. Trouves tu normal que linxs, Firefox, Konqueror et j'en passe des tonnes, pour lire un fichier sur un serveur, implémentent des fonctions de connection au serveur ? Moi pas ! Je préfère nettement la solution du Hurd qui consiste a monter un ftp, http sur le vfs comme ca l'application n'a plus qu'a faire ouvrir le fichier comme s'il était local. Comme ca il n'y a qu'un seul code, et celui qui veut faire une application pour lire un fichier distant n'a plus a ce soucier de la connection, tout comme dans les langages de haut niveau où le programmeur n'a plus a ce soucier de la gestion de la mémoire. Les applications sotnt plus simple a écrire, les bug de connections sont éradiqués et il n'est plus utile pour lire un fichier distant de savoir ce connecter a au serveur. Ceci pour répondre a ton "2x plus de fonctions en 2x moins de temps avec 2x moins de programmeurs 2x moins doués". Mais là ou tu te trompe c'est que la machine n'a pas a être 10 fois plus puiisante, c'est le système qui est 10 fois mieux concu ! Pour les langages de haut niveau c'est pareil, ils simplifient la vie, réduisent les doublons et demandent moins de connaissances pour arriver aux mêmes buts mais ils ne sont pas 10 fois plus gourmands,.
[^] # Re: Mon cas ...
Posté par GTof . En réponse au journal Commencer à programmer ?. Évalué à 6.
Puis aller plus vite pour coder une tâche ne sinifie pas mettre deux fois moins de temps au total car tu peux peux profiter du temps que tu as gagné pour mieux penser ton programme et ses algorithmes. Dans un programme une améloiration d'un algorithme est souvent bien plus efficace qu'une maipulation astucieuse de la mémoire ou du processeur. De plus si on prend le compilateur d'O'Caml, il optmise pas mal et rien ne dit qu'a la main tu fasses mieux que lui.
J'ai envie de faire une anlalogie. Trouves tu normal que linxs, Firefox, Konqueror et j'en passe des tonnes, pour lire un fichier sur un serveur, implémentent des fonctions de connection au serveur ? Moi pas ! Je préfère nettement la solution du Hurd qui consiste a monter un ftp, http sur le vfs comme ca l'application n'a plus qu'a faire ouvrir le fichier comme s'il était local. Comme ca il n'y a qu'un seul code, et celui qui veut faire une application pour lire un fichier distant n'a plus a ce soucier de la connection, tout comme dans les langages de haut niveau où le programmeur n'a plus a ce soucier de la gestion de la mémoire. Les applications sotnt plus simple a écrire, les bug de connections sont éradiqués et il n'est plus utile pour lire un fichier distant de savoir ce connecter a au serveur. Ceci pour répondre a ton "2x plus de fonctions en 2x moins de temps avec 2x moins de programmeurs 2x moins doués". Mais là ou tu te trompe c'est que la machine n'a pas a être 10 fois plus puiisante, c'est le système qui est 10 fois mieux concu ! Pour les langages de haut niveau c'est pareil, ils simplifient la vie, réduisent les doublons et demandent moins de connaissances pour arriver aux mêmes buts mais ils ne sont pas 10 fois plus gourmands,.