• [^] # Re: Surprise

    Posté par (site web personnel) . En réponse au journal Lisaac: sorti de la 0.39beta. Évalué à 3.

    Le problème c'est qu'on a effectivement pas la même définition de VM.
    Pour toi une VM reste un truc concrêt qui "tourne" alors que pour moi c'est essentiellement une cible. Pour moi ce qui tourne c'est le programme, soit le code source compilé/interprété + runtime.

    après il me semble qu'habituellement quand on parle de VM on parle de machine logicielle, plutôt.
    Après oui c'est aussi une partie de mon discours : casser cette idée qu'il y a une "machine" qui tourne. On entend du coup tout et n'importe quoi : "pourquoi utiliser la lourdeur d'une VM ?" "La VM ralenti tout", "le code natif ca va plus vite", etc.
    Alors que dans les faits, les VM modernes sont implémentés à l'aide de compilateur qui traduisent en code natif, bref au final il n'y a que du code natif qui s'exécute.

    J'ai bien la phrase sur wikipedia concernant la JVM :
    "The JVM runtime executes .class or .jar files, emulating the JVM instruction set by interpreting it, or using a just-in-time compiler (JIT) such as Sun's HotSpot."
    Ils font clairement la différence entre le runtime et le modèle : l'un est une implémentation de l'autre, et il peut y avoir différentes techniques d'implémentation.