Você pode crescer e ampliar o poder da linguagem de programação Lisp através do uso de macros. Macros Lisp aplicar um nome a uma combinação de peças existentes da linguagem Lisp, Lisp bibliotecas ou funções que você escreve para criar um novo recurso de linguagem que vai avaliar como qualquer outro componente linguagem Lisp . Macros são uma forma de taquigrafia --- quando você avaliar uma macro , o interpretador expande a macro no código que encapsula , em seguida, executa o código. Um exemplo de uma macro Lisp você pode criar é um Fahrenheit para Celsius utilitário de conversão de temperatura. Este exemplo mostra como uma macro pode combinar outra macro e uma função Lisp . Coisas que você precisa
Um computador com Common Lisp instalado.
Mostrar Mais instruções
1
lançar o terminal de linha de comando , clicando no botão "Iniciar" e clique em " Execute " opção de menu. Digite " comando " na caixa de entrada e clique em "OK".
2
Inicie o interpretador de Common Lisp , digitando " clisp " no prompt de comando . Pressione a tecla "Enter" .
3
Digite o código para a primeira parte da aplicação no prompt de comando Lisp . Sua nova macro consiste em outra macro chamado Ratio. O comando defmacro cria a macro , que contém a inclinação do terreno de Celsius contra Fahrenheit .
(Relação defmacro () ( /5.0 9.0) )
4
Digite o código para a segunda parte da macro na linha de comandos Lisp . A função " diff" subtrai 32 da temperatura em Fahrenheit
(dif defun (x ) (- x 32,0) ) .
5
Digite o código para a parte final do macro na linha de comandos Lisp . A " fc" macro aceita a temperatura em Fahrenheit, multiplica-o pela razão , multiplica por "diff ", em seguida, imprime o resultado.
( Fc defmacro (x) (* ( ratio) (dif x) ) )
6
Teste a macro digitando "(fc 98,6 ) " no prompt de comando Lisp . O intérprete deve imprimir 37,0 , que é de 98,6 ou a temperatura do corpo em graus Celsius.