私は、関数呼び出しのインターセプト、ロギングコードの挿入などを行うためにバイトコードウィービングを使用するJavaやC#のような言語用に書かれたライブラリについて読んでいます。それらの利用方法をよりよく理解しようとする。マクロについてよく読めば読むほど、マクロがバイトコードウィービングライブラリと同じ種類の機能を提供するように見えます。機能とは、コンパイル時にコードを操作できることを意味します。
私が見ているライブラリの例は、AspectJ、PostSharp、Cecilです。
片方でできること、もう片方ではできないことはありますか?彼らは実際に同じ問題を解決していますか、それともリンゴとオレンジを比較していますか?