• [^] # Re: seul compilateur objet au monde à réaliser une analyse de flot ?

    Posté par . En réponse à la dépêche Lisaac 0.12 en GPL v3. Évalué à 3.

    Pire que ça, le cas embêtant c'est à chaque fois que tu veux définir une vraie méthode virtuelle

    Lisaac simule des schemas d'executions et trace tous les types possibles. Meme si les types dépendent de données, il ne sont pas créés en fonction des données (il faudrait pouvoir definir des prototypes à la volée, en runtime). Tu as juste différent types prédefinis (ceux que tu as créés pour ton programme) qui sont utilisés en fonction de celles-ci, donc tu peux tracer.

    Il serait intéressant de voir des benchs portant sur ce point plutôt que sur la rapidité.

    Si tu parles de l'heritage (sinon j'ai mal compris et je m'en excuse ;) ), des benchs avait été fait par Xavier Oswald pour tester ces points là. En gros il y avait un bench sur l'heritage horizontal (une classe A et 500 classes filles directes par exemple) et vertical.
    Pour le vertical, il prenait un proto du bas de l'arbre et faisait 2.000.000 appels sur des methodes codées dans un des parents, quelconque (ca allait de 25 à 500 parents). Voilà les chiffres, tirés d'un log irc ^^ :

    xoswald: c++ croit rapidement 1.4s , 2.1s, 2.6s etc..
    xoswald: alors que lisaac reste pratiquement stationnaire
    xoswald: 0.7s a 1s
    xoswald: et java met deja 5.7s pour 25 parents