169 похожих чатов

А как с таким борятся ? про термин стак тут

мне пока не попадалось

ghci> foldr (\(CotMD n ctM _) (mstep,pos) -> if ctM > mstep then (ctM, n) else (mstep, pos)) (0,0) $ take 10000000 listcot2
*** Exception: stack overflow

13 ответов

36 просмотров

тут логическая ошибка бесконечной рекурсии. с логическими ошибками можно бороться отладкой и тестами. проверить сначала на маленьких данных

Fedor- Автор вопроса
Cheese Syrowiecki
тут логическая ошибка бесконечной рекурсии. с логи...

с маленькими работает, то есть если на 0 меньше таке, то все ок.... вопрос был конкретно про такую ошибку

Fedor
с маленькими работает, то есть если на 0 меньше та...

о, это важное дополнение. важна не просто ошибка, а в каких условиях она проявляется

здесь слишком большая ленивая формула строится. отложите эту задачу до тех пор, пока не прочитаете главу про лень и строгость

можете дать данные (в личку), я проверю у себя, и если найду простое решение, то подскажу что-нибудьЮ

Fedor
с маленькими работает, то есть если на 0 меньше та...

попробуй на foldl' заменить. не факт, конечно, но может сработать

Fedor
с маленькими работает, то есть если на 0 меньше та...

проверил, это не бесконечная рекурсия, а слишком много задумок. можно расставить бэнги, например, data CotRes = CotRes !Int !Int !Int !Int

Cheese Syrowiecki
проверил, это не бесконечная рекурсия, а слишком м...

нет, так не сработало. всё равно память кончилась, но позже

Cheese Syrowiecki
нет, так не сработало. всё равно память кончилась,...

Ещёб она не кончилась, у тебя в foldr шаг строгий

Gentle Rabbit
Ещёб она не кончилась, у тебя в foldr шаг строгий

она и без этого кончается, только в другом месте

Cheese Syrowiecki
она и без этого кончается, только в другом месте

Ну потому что мемори лик в понял аккумулятора это не ленивый шаг. Шаг является ленивым в том случае, если его можно вычислить без вычисления хвоста.

Cheese Syrowiecki
действительно, foldl' помогла

https://github.com/hasura/graphql-engine/pull/2933#discussion_r328821960

Похожие вопросы

Обсуждают сегодня

Привет всем. появился вопрос. Разрабатываю сайт, в данный момент он запущен. Хостинг beget. Добавляю на сайт яндекс метрику с помощью полей client-settings (взято отсюда http...
Andrew
2
я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
а как ловят такое ghci> res <- getPos2 urlt 0 (alist !! 0) 200 ghci> res SearchAtom (Search "www.google.com" "/search?q=" "Haskell") "haskell.org" (SearchTS [(2024-05-06 07:...
Fedor
14
короче сгенерила мне эта штука код на ассемблере: struc string val { common local .value dq .value .value: if ~val eq db val end if db 0 } fo...
Vi Chapmann Chapmann
12
Есть тут те у кого дети есть + 2 работы + в зал ходят + в семейной жизни все хорошо?
Abdul-Aziz M.
13
Всем привет! Массив вводится с клавиатуры, кол-во элементов неизвестно, поэтому я указал arr db 100 dup(?) С нахождением максимума проблем нет, а вот минимум почему-то всегд...
En Vind Av Sorg
11
кто шарит: mattermost отслеживает что ты на пк запускаешь?
Valentin
13
Помогите, пожалуйста, делаю программу для для подсчёта корней квадратного уравнения, знаю, что есть куча недочётов, недоработок, но основная проблема в том, что почему-то при ...
NYC
13
в сях есть множество как в питоне? для удаление дубликатов
Linus
25
Всем привет! Стоит задачка, выбрать из выпадающего списка конкретный цвет. Пока реализовал через активацию контрола списка и выбора несколькими нажатиями стрелки вправо до нуж...
Роман.С
9
Карта сайта