macro: /mak´roh/, n.

[linguaggio tecnico] Un nome (a volte seguito da una lista formale di arg) che e' paragonata ad un testo o espressione simbolica in cui dev'essere espansa (possibilmente con la sostituzione dei veri parametri) da un espansore di macro. Questa definizione si puo' trovare in ogni vocabolario tecnico; quello che non ti viene detto e' come la connotazione tipicamente hacker del termine e' cambiata nel tempo.

il termine macro si e' originato nei primi assemblatori, che incoraggiavano l'uso di macro come un dispositivo di strutturazione e nascondimento delle informazioni. Nei primi anni 70, gli assemblatori di macro divennero onnipresenti, e a volte quasi potenti e costosi come gli HLL, solo per stare sempre dalla parte del vincitore non appena la migliorata tecnologia dei compilatori rese la programmazione in assembly marginale (vedi languages of choice). Ai nostri giorni il termne e' usato molto spesso in connessione con il preprocessore C, LISP, o uno dei tanti linguaggi per applicazioni specifiche costruiti intorno una funzione di espansione macro (come TeX o la suite [nt]roff di Unix).

Comunque, il significato ha vagato cosi' tanto che le macro collettive sono a volte usate in codici in ogni linguaggio specifico per qualche utilizzo (sia se il linguaggio e' tradotto davvero con l'espansione del testo, sia se non lo e'), e per entita' simili alle macro come le macro della tastiera supportate in alcuni editor di testo (e i supporti di INIT/CDEV sulle tastiere di PC TSR o Macintosh).