Clojure compile dynamiquement tout le code Clojure de bytecode à l'exécution. Je ne suis pas sûr comment vous pouvez voir ce bytecode compilé dynamiquement. Cependant, vous pouvez faire Ahead Of Time (AOT) la compilation de votre code Clojure vous-même et qui va générer des fichiers .class. Ensuite, vous pouvez utiliser javap
pour voir le bytecode.
Utilisez la fonction compile
dans Clojure/noyau pour compiler votre espace de noms:
compilez fonction
Utilisation: (compiler lib)
Compile l'espace de noms nommé par le symbole lib dans un ensemble de classfiles. La source de la lib doit être dans un répertoire relatif au chemin d'accès relatif. Les fichiers de sortie iront dans le répertoire spécifié par chemin de compilation, et ce répertoire doit également être dans le classpath.
Puis utilisez javap
:
javap -l -c -s -private MyClass
Veuillez noter que l'optimisation du bytecode pourrait ne produire aucun résultat positif. Voir [cette interview] (http://java.sun.com/developer/technicalArticles/Interviews/goetz_qa.html#CodePerformsWell). Il parle d'écrire Java, mais il s'applique essentiellement à tous les langages produisant du bytecode. –