Provient du message de XhaK
serait il possible de faire un processeur qui comprenne directement le byte code ?
C'était dans les projets de Sun au lancement de Java : faire une machine avec un proc qui exécute directement le byte-code, avec un OS full Java.
Provient du message de Masklinn
Question a 2 francs: as tu comparé des programmes java avec des programmes equivalents dans d'autres langages interprétés et comparé les lourdeurs (en termes de ressources machines) des différents interpréteurs à l'exécution?
Oui, et ? Il y a des applications pour lesquelles il n'y a pas besoin de chercher gagner le moindre cycle d'horloge ou le moindre octet. J'estime gagner en confort de développement et en structuration ce que je perds en performances pures dans le cadre du dev perso. Et dans un cadre professionnel, on n'est pas forcément maître de la plateforme ou de l'environnement pour lequel on développe
Je ne nie pas que Java soit gourmand en ressources, ou qu'il ait des performances inférieures à d'autres langages pour des problématiques particulières. Je dis juste que JE ne le trouve pas lourd, et que JE pense qu'il apporte une certaine robustesse dans les développements sans pour autant demander des machines impossibles pour le faire tourner dans des conditions raisonnables, et que JE pense également que c'est un langage qui dispose d'un spectre d'utilisations assez étendu pour valoir le coup.
Ca n'est qu'un avis perso, et je ne cherche à convaincre personne
Provient du message de Masklinn
Je n'en ai retenu qu'un, car tu me l'as imposé
et la semi-compilation est une notion un peu étrange, à la limite parler d'optimisation ou de pré-compilation (qui est également inexact, en fait il vaudrait mieux parler de pré-interprétation) pour désigner la génération des Bytecodes OK, mais semi-compilation je trouve personnellement que ca n'a pas réellement de sens
Moi y en a pas avoir compris ce que j'ai imposé
Quant à la semi-compilation, c'est sous ce terme là que l'on m'a appris ce type de langage, comportant 2 phases, une phase de transformation du source en pseudo-code, puis interprétation du pseudo-code. La théorie veut que ce type de langages permettent un portage plus facile vers différentes plate-formes, dans la mesure où seule la machine virtuelle est propre à la plate-forme et nécessite un nouveau développement. Dans la pratique, les performances brutes de ce type de langage sont inférieures à celles des langages compilés. Par exemple, le Pascal était un langage semi-compilé tel que définit par Niklaus Wirth, mais n'a commencé à rencontrer un succès - du moins en France - auprès des développeurs qu'à partir du moment où Borland a fourni un véritable compilateur et s'est donc passé de l'utilisation d'une machine virtuelle. De la même façon, Java est moins performant que C++ pour faire de la prog système ou PHP pour faire du Web (encore que pour PHP, y a bataille à mon avis  ).
|