M4 (makroprocesor)
Author
Albert Floresm4 je jazyk pro zpracování maker, který navrhli Brian Kernighan a Dennis Ritchie v roce 1977. Jeho původním účelem byl překlad programů napsaných v dialektu Rational Fortran do běžného Fortranu.
V současnosti se používá v několika různých nástrojích pro vývoj software (např. Bison, Autoconf) a pro generování konfiguračních souborů (např. +more sendmail).
Použití
Makroprocesor kopíruje vstupní text na svůj výstup a při tom zpracovává nalezená makra. Pomocí vestavěných maker je možné provádět činnosti jako: * nahrazování textu * parameter substitution * vkládání souborů * manipulace s řetězci * podmíněné vyhodnocování * aritmetické výpočty
Příklad
Jednoduchý příklad, který by mohl být součástí knihovny pro generování HTML dokumentů. Ukazuje jak udělat automatické číslování kapitol:
define(`H2_COUNT', 0) define(`H2', `define(`H2_COUNT', incr(H2_COUNT))' dnl `<h2>H2_COUNT. $1</h2>')
H2(První kapitola) …nějaký text… H2(Druhá kapitola) ... další text… H2(Závěr) ... konec ...
a výsledek po zpracování makroprocesorem:
<h2>1. První kapitola</h2> …nějaký text… <h2>2. Druhá kapitola</h2> ... další text… <h2>3. Závěr</h2> ... konec ...
Externí odkazy
[url=http://www.gnu.org/software/m4/]GNU m4[/url] *[url=http://www.root.cz/serialy/makro-procesor-gnu-m4/]Český tutoriál GNU m4[/url]
Kategorie:Unixové programátorské nástroje Kategorie:Doménově specifické jazyky