Creo que entiendo.
Por ejemplo, si hacemos f :: [a] -> [a], f =(filter True).(filter True).(filter True),
entonces al realizar la operacion f (1:[]) = 1:[], se estarian construyendo dos (:) intermedios no?
Creo que entiendo.
Por ejemplo, si hacemos f :: [a] -> [a], f =(filter True).(filter True).(filter True),
entonces al realizar la operacion f (1:[]) = 1:[], se estarian construyendo dos (:) intermedios no?