M4 (makrokieli)
M4 on makrokieli, jonka Brian W. Kernighan ja Dennis M. Ritchie kehittivät Bell Labsissa 1970-luvulla.[1] Kieli oli saatavilla UNIX- ja GCOS-käyttöjärjestelmille.[1] Tekijöiden mukaan kieli on erityisen sopiva Fortran, PL/I ja C-kielien kanssa.[1] Kieli on laajennus Ritchien aiemmin AP-3 minitietokoneelle kehittämästä M3-kielestä.[1]
Kieltä on sanottu myös "mallinekieleksi" ja "esikääntäjäkieleksi".[2]
Kielestä on myös GNU-projektin avoimen lähdekoodin toteutus GNU M4, jossa on myös joitakin laajennuksia.[3] Yksi suurista kielen käyttökohteista on GNU Autoconf -projekti.[3]
Esimerkki
[muokkaa | muokkaa wikitekstiä]Ydintoimintona on define
avainsana, jolla määritellään uusia makroja.[2]
Makroja voidaan käyttää Unix-putken kautta "filtteriohjelmina".[2]
Määritetään M4:lle seuraava makro:
define(AUTHOR, William Shakespeare)
Annetaan makrolle syöte:
A Midsummer Night's Dream by AUTHOR
.. jolloin saadaan tulostuksena seuraava:
A Midsummer Night's Dream by William Shakespeare
Lähteet
[muokkaa | muokkaa wikitekstiä]- ↑ a b c d Kernighan, Brian W. & Ritchie, Dennis M.: The M4 Macro Processor (PDF) wolfram.schneider.org. 1.7.1977. Viitattu 28.5.2019. (englanniksi)
- ↑ a b c Michael Breen: Notes on the M4 Macro Language mbreen.com. 2008. Viitattu 28.5.2019. (englanniksi)
- ↑ a b GNU M4 GNU. Viitattu 28.5.2019. (englanniksi)