Du kan vokse og udvide styrken af Lisp programmeringssproget gennem brug af makroer. Lisp makroer anvender et navn for en kombination af eksisterende dele af Lisp sprog Lisp biblioteker eller funktioner , du skriver at oprette et nyt sprog funktion, der vil evaluere ligesom alle andre Lisp sprog komponent. Makroer er en form for stenografi --- når du evaluerer en makro , tolken udvider makroen i koden det sammenfatter , så udfører denne kode. Et eksempel på en Lisp makro, kan du oprette en Fahrenheit til Celsius temperatur konvertering nytte . Dette eksempel viser, hvordan en makro kan kombinere anden makro og en Lisp funktion . Hvad du har brug
En computer med Common Lisp Installeret .
Vis Flere Instruktioner
1
Start kommandolinjen terminal ved at klikke på " Start" knappen og klikke på " Kør " menupunkt. Skriv "command" ind i indtastningsfeltet , og klik derefter på "OK".
2
Start Common Lisp tolk ved at skrive " clisp " ved kommandoprompten . Tryk på " Enter "-tasten.
3
Angiv koden for den første del af ansøgningen på Lisp kommandoprompten. Din nye makro består af en anden makro kaldet Ratio . Den Defmacro kommandoen opretter makroen, som indeholder hældningen af handlingen i Celsius versus Fahrenheit .
( Defmacro ratio ( ) ( /5,0 9,0) )
4
Angiv koden for den anden del af makroen ved Lisp kommandoprompten. Funktionen " diff " trækker 32 fra temperaturen i Fahrenheit
. ( Defun diff (x ) (- x 32,0) )
5
Angiv koden for den sidste del af makro på Lisp kommandoprompten. Den makro " fc " accepterer temperaturen i Fahrenheit , multiplicerer det med det forhold, multiplicerer det med " diff ", så udskriver resultatet .
( Defmacro fc (x ) (* ( ratio) ( diff x ) ) )
6
Test makroen ved at skrive "( fc 98,6 )" på Lisp kommandoprompten. Tolken skal udskrive 37,0 , hvilket er 98,6 eller legemstemperatur i grader Celsius .