Home

macrovariabelen

Macrovariabelen zijn symbolische namen die binnen een macro- of tekstverwerkingsysteem worden gedefinieerd en tijdens de expansie worden vervangen door een waarde of een code-fragment. Ze dienen om teksten of code te parameteriseren, herbruikbaarheid te vergroten en configuratie mogelijk te maken zonder de broncode manueel te wijzigen.

Expansie van macrovariabelen vindt doorgaans plaats tijdens preprocessing of tekstgeneratie, voordat de uiteindelijke code of documenten

Veelvoorkomende omgevingen waarin macrovariabelen voorkomen zijn onder meer de C/C++ preprocessor (bijvoorbeeld#define PI 3.14 of #define

Voordelen van macrovariabelen zijn onder meer eenvoudiger vervanging, flexibiliteit bij aanpassing en betere herbruikbaarheid. Nadelen omvatten

Macrovariabelen verschillen van runtime-variabelen doordat de vervanging meestal vóór of tijdens de bronverwerking plaatsvindt, terwijl runtime-variabelen

worden
gemaakt.
Daardoor
zijn
macrovariabelen
meestal
onafhankelijk
van
run-time
typen
en
beïnvloeden
zij
met
name
compileertijd
of
documentgeneratie
in
plaats
van
uitvoeringstijd.
SQUARE(x)
((x)*(x))),
Makefiles
(VAR
=
waarde;
$(VAR)
geeft
de
waarde
weer),
en
TeX/LaTeX
waar
men
macros
definieert
met
bijvoorbeeld
\def\naam{waarde}
en
deze
later
inzet.
Ook
in
Lisp-achtige
talen
bestaan
macro-systemen
die
code
transformeren
op
syntactisch
niveau.
In
moderne
templating-
en
buildsystemen
fungeren
vergelijkbare
mechanismen
vaak
als
tekenreductie
of
parameterisatie.
gebrek
aan
type-veiligheid,
mogelijke
onverwachte
bijwerkingen
door
simpele
tekstvervanging
en
risico’s
op
conflicten
met
andere
namen
(hygiene).
in
geheugen
bestaan
en
tijdens
de
uitvoering
worden
gemanaged.
Zie
ook
macro,
preprocessor,
Makefile
en
TeX/LaTeX-macro’s.