M4 (makroprocesor)

Technology
12 hours ago
8
4
2
Avatar
Author
Albert Flores

m4 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

5 min read
Share this post:
Like it 8

Leave a Comment

Please, enter your name.
Please, provide a valid email address.
Please, enter your comment.
Enjoy this post? Join Cesko.wiki
Don’t forget to share it
Top