Доброго времени суток! Есть действие, возвращающее некоторое значение, нужно выполнить его N раз и получить список всех возвращенных значений. Пробую создавать список действий и выполнять его с помощью sequence, но получается медленно и при больших N не хватает памяти. Например: import IO import System.Random rollDice :: IO Int rollDice = getStdRandom $ randomR (1, 6) rollNDice n | n < 0 = error "Negative sequence length" | n == 0 = return [] | otherwise = sequence $ take n $ repeat rollDice если вызвать rollNDice 100000, то случится переполнение стека или подобная ошибка. Собственно, вопрос в том, как это делать правильно и что плохого в моем примере.
Ответ на:
комментарий
от anonymous
Ответ на:
комментарий
от anonymous
Ответ на:
комментарий
от ratatosk
Ответ на:
комментарий
от Macil
Ответ на:
комментарий
от anonymous
Ответ на:
комментарий
от Macil
Ответ на:
комментарий
от anonymous
Ответ на:
комментарий
от Macil
Ответ на:
комментарий
от anonymous
Ответ на:
комментарий
от Macil
Ответ на:
комментарий
от anonymous
Ответ на:
комментарий
от anonymous
Ответ на:
комментарий
от anonymous
Ответ на:
комментарий
от Macil
Ответ на:
комментарий
от Macil
Ответ на:
комментарий
от anonymous
Ответ на:
комментарий
от anonymous
Ответ на:
комментарий
от Macil
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум [haskell][Тормоза] (2012)
- Форум [Haskell] Почему такая разница в производительности? (2011)
- Форум Последовательное выполнение (2014)
- Форум подскажите последовательность действий (2010)
- Форум Какова последовательность действий? (2006)
- Форум эффективный менеджмент в действии (2012)
- Форум Последовательное выполнение скриптов sh (2016)
- Форум Python (pygtk) последовательность выполнения (2012)
- Форум Bash скрипт - последовательное выполнение (2020)
- Форум выполнение действий rest + shell (2019)