Seguinte: Definição de Funções Acima: Elementos da Linguagem Anterior: Combinações
Índice remissivo

Avaliação de Combinações

Como já vimos, o Lisp considera que o primeiro elemento de uma combinação é um operador e os restantes são os operandos.

O avaliador determina o valor de uma combinação como o resultado de aplicar o procedimento especificado pelo operador ao valor dos operandos. O valor de cada operando é designado de argumento do procedimento. Assim, o valor da combinação (+ 1 (* 2 3)) é o resultado de somar o valor de 1 com o valor de (* 2 3). Como já se viu, 1 vale 1 e (* 2 3) é uma combinação cujo valor é o resultado de multiplicar o valor de 2 pelo valor de 3, o que dá 6, e que somado a 1 dá 7.

> (+ 1 2)
3
> (+ 1 (* 2 3))
7

Exercício 5

Calcule o valor das seguintes expressões Lisp:

(* (/ 1 2) 3)
(* 1 (- 2 3))
(/ (+ 1 2) 3)
(/ (/ 1 2) 3)
(/ 1 (/ 2 3))
(- (- 1 2) 3)
(- 1 2 3)
(- 1)

Resposta



Copyright António Leitão, 1995