macro

/mak´roh/, 名詞

[techspeak]マクロ展開器によって(場合によっては実引数を代入しつつ)テキストや記号的表現に展開されるよう、それと等価と定められた名前(形式的なargリストが続くこともある)。この定義はどの技術辞典にも載っている。そうした辞典が教えてくれないのは、この語のハッカー的含意が時とともにどう変化してきたかである。

macroという語は初期のアセンブラに由来し、それらは構造化と情報隠蔽の手段としてマクロの使用を促した。1970年代初頭、マクロアセンブラはどこにでもあるようになり、時にはHLLと同じくらい強力で高価なものになったが、コンパイラ技術の改善がアセンブラプログラミングを周辺へ追いやるにつれ、人気を失った(languages of choiceを参照)。今日ではこの語は、Cプリプロセッサ、LISP、あるいはマクロ展開機能を中心に構築されたいくつかの特殊用途言語(TeXやUnixの[nt]roffスイートなど)に関連して使われることが最も多い。

実際、意味の漂流は進み、今では総称としてのmacrosが、あらゆる特殊用途のアプリケーション制御言語のコード(その言語が実際にテキスト展開によって翻訳されるかどうかは問わない)や、一部のテキストエディタ(およびPCのTSRやMacintoshのINIT/CDEVといったキーボード拡張)がサポートするキーボードマクロのようなマクロ的な実体を指して使われることもある。