わざわざ「自動生成」と名乗るものは
自動生成ってなんかダサいと思います。
いや、ダサいとかそうい問題じゃなくて、必要な時と場合もあるってのはわかるんですけどね。
自動生成ってのは、なにかのギャップを埋めるための暫定対応的なものなんじゃないかと思います。
同感。
例えばバーチャルマシンを例にあげると、あれって要はマシンが実際に実行するための命令を自動生成しているわけですよね。
てゆーか、コンパイラってマシンコードの自動生成器ですよね。
ソフトウェア開発の世界では、自動生成されたものをいじることが想定されていない場合やいじる必要がない場合、そのメカニズムを「自動生成」と呼ぶことはないように思います。JavaコンパイラがJVMコードを自動生成する、なんていいませんよね。自動生成を名乗るメカニズムは、生成されたものに人間があとから手を加えることを想定しているのではないでしょうかね。
生成されたバイトコードに手を入れないと使えないJavaコンパイラみたいなものですね、といったらいいすぎかな。初期のC++コンパイラはCのコードを生成するプリプロセッサでしたが、そっちのほうが近いかな。
自動生成といえば、設計モデルからコードを自動生成する、とか、制約として記述した仕様からコードを自動生成する、なんて話があります。私はこれにも懐疑的なんですが、書いてみようとしたらあんまり知識がない上に考えがまとまっていないことが分かったので出直してきます。