Oui, je dirai que la vitesse de compilation est la priorité principale du projet. Pas dans le sens où tous les changements visent à améliorer cette vitesse — c'est plutôt rare en fait — mais dans le sens où c'est un des objectifs principaux du projet et donc un critère de décision important pour l'acceptation d'un changement. Cela dit, il n'est arrivé qu'une fois ou deux qu'un changement soit accepté car considéré trop lourd. TinyCC a plusieurs fonctionnalité mais c'est à mon avis sa rapidité et sa taille qui lui sont vraiment unique. On peut trouver les autres fonctionnalités ici ou là dans d'autres compilateurs. Il y a peut-être aussi le test de dépassement de bornes (bound checking) qui est assez atypique mais pas unique je pense.
Corcernant l'utilisation de TinyCC comme un moyen d'étendre une application je ne suis pas sûr exactement de comprendre la question mais je pense que la réponse est oui. Le projet TinyCC fournit une bibliothèque statique (libtcc.a) qui peut être incorporée dans un programme pour compiler du C à l'exécution. Il est donc tout à fait faisable de faire un compilateur à la volée (JIT) avec TinyCC et il me semble même que cela a été fait.
[^] # Re: Pas de support C++
Posté par Thomas Preud'homme . En réponse à la dépêche Sortie de TinyCC 0.9.26. Évalué à 7.
Oui, je dirai que la vitesse de compilation est la priorité principale du projet. Pas dans le sens où tous les changements visent à améliorer cette vitesse — c'est plutôt rare en fait — mais dans le sens où c'est un des objectifs principaux du projet et donc un critère de décision important pour l'acceptation d'un changement. Cela dit, il n'est arrivé qu'une fois ou deux qu'un changement soit accepté car considéré trop lourd. TinyCC a plusieurs fonctionnalité mais c'est à mon avis sa rapidité et sa taille qui lui sont vraiment unique. On peut trouver les autres fonctionnalités ici ou là dans d'autres compilateurs. Il y a peut-être aussi le test de dépassement de bornes (bound checking) qui est assez atypique mais pas unique je pense.
Corcernant l'utilisation de TinyCC comme un moyen d'étendre une application je ne suis pas sûr exactement de comprendre la question mais je pense que la réponse est oui. Le projet TinyCC fournit une bibliothèque statique (libtcc.a) qui peut être incorporée dans un programme pour compiler du C à l'exécution. Il est donc tout à fait faisable de faire un compilateur à la volée (JIT) avec TinyCC et il me semble même que cela a été fait.