Common Lisp Macro/3

In quest’ultima puntata della miniserie daremo uno sguardo ad una serie di tipologie di macro meno comuni ma che ci permettono di costruire dei costrutti molto versatili e potenti. Cercheremo di capire infine quando è preferibile non utilizzare una macro per astrarre pattern di codice del nostro software.

[Read more…]

Common Lisp Macro/2

In questa seconda parte vedremo alcuni utilizzi delle macro in Common Lisp
e discuteremo due problemi tipici: la cattura accidentale di nomi (variable capture) e la valutazione
multipla.

[Read more…]

Common Lisp Macro/1

Tra le funzionalità che rendono il Common Lisp un linguaggio molto
potente e differente
da quelli più diffusi, vi sono
le macro.Una notazione ed una sintassi con poche regole ed un sistema di
lettura, compilazione e esecuzione del codice molto flessibile danno
allo sviluppatore la possibilità di astrarre un pattern di codice in
un nuovo costrutto, laddove tale pattern non può essere astratto con
una tradizionale funzione. I lettori che già conoscono il Common Lisp
possono saltare il prossimo paragrafo, nel quale ne sono riassunte
brevemente le basi. Coloro i quali vogliono approfondire o conoscere le macro in Scheme possono visionare le Avventure di un Pythonista in Schemeland 8, 9,10 e 11.
[Read more…]