Я видел этот код для генерации чисел Фибоначчи.Haskell как создать этот бесконечный список?
fibs = 1:1:(zipWith (+) fibs (tail fibs))
Может подобный стилизованный код записывается, чтобы генерировать бесконечный список [1 ..]?
Я видел это link on cyclic structures на сайте Haskell.
Там приведен пример
cyclic = let x = 0 : y
y = 1 : x
in x
Я попытался создать список для моей проблемы в циклическом порядке, но не смог добиться успеха. Что я хочу - это список, определенный в терминах самого себя и который оценивается в [1 ..] в Hasekll.
Примечание: Haskell [1..]
оценивает по: [1,2,3,4,5...]
, а не [1,1,1...]
.
'ones = 1: ones' –
Это не то же самое, что' [1 ..] 'в Haskell. Haskell '[1 ..]' оценивает '[1,2,3,4,5 ...]', в то время как ваш оценивает '[1,1,1,1 ...]'. –
А, ок. 'nats = 1: map (+1) nats' then. –