Size: a a a

2021 February 10

к

кана in Haskell
зиппер для списка не был бы рекурсивным типом
источник

к

кана in Haskell
кана
решение 2, работать с этим очень сложно, нужно всегда не забывать ссылки назад  правильно обновлять

и конструкторы желательно не экспортировать
проще уж сделать какой-нибудь IOList, где ссылки на ноды будут реально IORef/TVar ссылками
источник

к

кана in Haskell
типа такого
источник

к

кана in Haskell
работать с этим невозможно
источник

к

кана in Haskell
в общем dll не нужны
источник

к

кана in Haskell
[BRM]White Rabbit
Так в хаскеле односвязные или двусвязные списки? Просто для односвязного вот это вот будет стоить O(n+m), а для двусвязного просто O(n), где n - аргумент функции, а m - колво элемов в листе.
не очень понимаю, как двусвязность как-то поможет. В нем нужно будет дойти до конца за m и вернуться за n назад
источник

ЗП

Зигохистоморфный Пре... in Haskell
но тут все будет жить в IO
источник

MK

Maxim Koltsov in Haskell
кана
не очень понимаю, как двусвязность как-то поможет. В нем нужно будет дойти до конца за m и вернуться за n назад
Видимо предполагается что в двусвязном случае список ещё где-то хранит указатель на конец
источник

[

[BRM]White Rabbit in Haskell
кана
не очень понимаю, как двусвязность как-то поможет. В нем нужно будет дойти до конца за m и вернуться за n назад
В двусвязном лениво запоминается, что надо брать с конца, дёргаются 10 элемов и после лениво запоминается, что брать надо снова с начала
источник

[

[BRM]White Rabbit in Haskell
Maxim Koltsov
Видимо предполагается что в двусвязном случае список ещё где-то хранит указатель на конец
В двусвязном списке можно пойти в обе стороны, ага.
Каждый элем имеет указатели на два соседних.
источник

к

кана in Haskell
то что можно идти в обе стороны не говорит о том, что у нас есть ссылка на конец
источник

[

[BRM]White Rabbit in Haskell
Вот сейчас уточняю тогда🙃
источник

[

[BRM]White Rabbit in Haskell
P.s. какой смысл в двусвязном списке без указателя на конец?
источник

к

кана in Haskell
я честно говоря сам не сталкивался с кейсами, когда любой двусвязный список имел бы хоть какой-то смысл, но со списками в своей жизни я работал только иммутабельно, поэтому не знаю о кейсах в мутабельных мирах
источник

ЗП

Зигохистоморфный Пре... in Haskell
Maxim Koltsov
Видимо предполагается что в двусвязном случае список ещё где-то хранит указатель на конец
мб лучше зиппер просто взять?
источник

к

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

[

[BRM]White Rabbit in Haskell
кана
я честно говоря сам не сталкивался с кейсами, когда любой двусвязный список имел бы хоть какой-то смысл, но со списками в своей жизни я работал только иммутабельно, поэтому не знаю о кейсах в мутабельных мирах
В мутабельных мирах списки вообще не нужны😄
(Пара пограничных кейсов на в счёт)
источник

к

кана in Haskell
[BRM]White Rabbit
В мутабельных мирах списки вообще не нужны😄
(Пара пограничных кейсов на в счёт)
ну, в этом я сомневаюсь если честно
источник

к

кана in Haskell
чистые массивы как буфферы на памяти дорого увеличивать, в итоге все равно какие-то слайсы в виде деревьев нужны
источник

[

[BRM]White Rabbit in Haskell
Деревья используются, да. Я даже пример могу назвать из стд плюсов, где там часто используемая коллекция внутри - rb дерево.
А вот чистые списки прям редко.
источник