Puede crecer y extender el poder del lenguaje de programación Lisp a través del uso de macros. Macros Lisp aplicar un nombre a una combinación de partes existentes del lenguaje Lisp, bibliotecas o funciones Lisp que escriben para crear una nueva característica del lenguaje que evaluará como cualquier otro componente del lenguaje Lisp. Las macros son una forma de taquigrafía --- cuando se evalúa una macro , el intérprete se amplía la macro en el código se encapsula , a continuación, ejecuta el código. Un ejemplo de una macro Lisp puede crear es una utilidad de conversión de grados Fahrenheit a Celsius de temperatura . Este ejemplo muestra cómo una macro puede combinar otra macro y una función Lisp. Cosas que necesitará
Un ordenador con Common Lisp instalado .
Mostrar más instrucciones
1
Inicie la consola de comandos , haga clic en el botón "Inicio" y haga clic en " Ejecutar "del menú. Tipo " comando" en la casilla correspondiente y haga clic en " Aceptar".
2
Inicie el intérprete de Common Lisp escribiendo " clisp " en el símbolo del sistema. Pulse la tecla "Enter " .
3
Escriba el código de la primera parte de la aplicación en el símbolo del sistema Lisp. Su nueva macro consiste en otra macro llamada Ratio. El comando defmacro crea la macro , que contiene la pendiente de la parcela de frente Celsius Fahrenheit .
(Relación defmacro () ( /5.0 9.0 ) )
4
Escriba el código de la segunda parte de la macro en el símbolo del sistema Lisp. La función " diff" resta 32 de la temperatura en Fahrenheit
. (Dif defun (x ) (- x 32,0 ) )
5
Escriba el código de la parte final de la macro en el símbolo del sistema Lisp. La macro "fc " acepta que la temperatura en grados Fahrenheit , lo multiplica por la relación , lo multiplica por "diff ", luego imprime el resultado.
( Defmacro fc ( x) ( * (razón ) (dif x) ) )
6
prueba la macro , escriba " (FC 98.6 )" en el símbolo del sistema Lisp. El intérprete debe imprimir 37,0 , que es de 98.6 o de la temperatura del cuerpo en grados Celsius.