Recordeu la definició circular de llistes "infinites" que vam veure a classes de laboratori?
(def naturals (lazy-seq (cons 0 (map inc naturals))))
(def factorials (lazy-seq (cons 1N (map * factorials (iterate inc 1N)))))
Ara suposem que tenim una funció que serveix per definir una seqüència on:
Així doncs, la seqüència és .
Definiu ara una llista "infinita", anomenem-la seq-general, amb els elements de la seqüència fent servir aquesta tècnica de la definició circular. És a dir, cal que definiu seq-general tal que la seva definició tingui la forma:
(def seq-general ...transformació, que inclou f, de la mateixa llista seq-general)
Afegiu el codi en el vostre codi per a que funcioni l’enviament.
Autoria: Jordi Delgado / Gerard Escudero
Generació: 2026-01-25T13:08:10.465Z
© Jutge.org, 2006–2026.
https://jutge.org