Du kan växa och utöka kraften i Lisp programmeringsspråk med hjälp av makron . Lisp -makron tillämpa ett namn på en kombination av existerande delar av Lisp språket , Lisp bibliotek eller funktioner du skriver för att skapa ett nytt språk funktion som kommer att utvärdera som alla andra Lisp språk komponent . Makron är en form av stenografi --- när du utvärderar ett makro , expanderar tolken makrot i koden det kapslar , då kör den koden . Ett exempel på en Lisp makro kan du skapa en Fahrenheit till Celsius temperatur omvandlingen nytta . Detta exempel visar hur ett makro kan kombinera ett makro och en Lisp -funktion . Saker du behöver Review, en dator med common in Lisp .
Visa fler instruktioner
1
Starta terminalen kommandoraden genom att klicka på " Start" och klicka på " kör " menyalternativ . Skriv " kommandot " i rutan , och klicka sedan på " OK . "
2
Starta Common Lisp tolk genom att skriva " clisp " i kommandotolken . Tryck på " Enter" .
3
Ange sifferkoden för den första delen av ansökan vid Lisp kommandotolken . Din nya makro består av ett annat makro som heter Ratio . Den Defmacro kommando skapar makrot , som innehåller lutningen på kurvan för Celsius jämfört Fahrenheit .
( Defmacro ratio ( ) ( /5,0 9,0 ) )
4
Ange sifferkoden för den andra delen av makrot vid Lisp kommandotolken . Funktionen " diff " subtraherar 32 från temperaturen i Fahrenheit
. ( Defun diff ( x ) ( - x 32,0 ) )
5
Ange sifferkoden för den sista delen av makro vid Lisp kommandotolken . Makrot " fc " accepterar temperaturen i Fahrenheit multiplicerar det med kvoten , multiplicerar det med " diff ", sedan skriver ut resultatet .
( Defmacro fc ( x ) ( * ( ratio ) ( diff x ) ) )
6
Testa makrot genom att skriva " ( fc 98,6 ) " på Lisp kommandotolken . Tolken ska skrivas ut 37,0 , vilket är 98,6 eller kroppstemperatur i grader Celsius .