Lisp
Lisp
João Meidanis
c Copyright 2011 J. Meidanis
Conteúdo
1 Introdução
4
1.1
Calculando derivadas simbólicas . . . . . . . . . . . . . . . . .
5
1.2
O psiquiatra . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5
1.3
MYCIN
6
1.4
Interpretador
..............................
...........................
2 Elementos da linguagem
7
11
2.1
Tipos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11
2.2
Números . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11
2.3
Símbolos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
12
2.4
Pares-com-ponto
.........................
12
2.5
Representação gráca . . . . . . . . . . . . . . . . . . . . . . .
13
2.6
Car, cdr e cons
..........................
15
2.7
Coleta de lixo . . . . . . . . . . . . . . . . . . . . . . . . . . .
15
3 Estrutura da linguagem
17
1
3.1
Denindo funções . . . . . . . . . . . . . . . . . . . . . . . . .
17
3.2
Condicionais . . . . . . . . . . . . . . . . . . . . . . . . . . . .
18
3.3
Variáveis locais
20
..........................
4 Símbolos
22
4.1
Avaliação e valores de um símbolo . . . . . . . . . . . . . . . .
22
4.2
Atribuindo valores a símbolos
..................
23
4.3
Inibindo a avaliação . . . . . . . . . . . . . . . . . . . . . . . .
24
5 Recursão
26
5.1
O método do quadradão
.....................
26
5.2
Recursão e laços . . . . . . . . . . . . . . . . . . . . . . . . . .
29
6 Aritmética
31
6.1
Funções básicas . . . . . . . . . . . . . . . . . . . . . . . . . .
31
6.2
Funções mais sosticadas . . . . . . . . . . . . . . . . . . . . .
33
7 Denição de funções
34
8 Condicionais
36
8.1
A forma especial
8.2
A macro
8.3
IF