Letra:
2. Dadas las siguientes definiciones: l1 = 1 : l2 + [3]
l2 = 2 : l1
¿Cu ́al de las siguientes afirmaciones es correcta?
(a) (last l1) retorna 3 usando evaluaci ́on por valor
(b) (last l1) retorna 3 usando evaluaci ́on perezosa
(c) ((head ◦ tail ◦ tail ) l1 ) retorna 1 usando evaluaci ́on por valor
(d) ((head ◦ tail ◦ tail ) l1 ) retorna 1 usando evaluaci ́on perezosa
respuesta (d)
Mi duda es porque la (b) no es correcta tambien ya que en la expresion:
last l1 = last (1:l2 ++[3])
El redex mas externo es last(...) y el ultimo elemento de la lista seria 3 entonces el resultado de last l1 = 3.
Que estoy haciendo mal?