Size: a a a

2021 March 05

[

[BRM]White Rabbit in Haskell
Kir
Типа data List a = List (a, List a)?
Ты этот тип никогда не создашь
источник

[

[BRM]White Rabbit in Haskell
Вот
List a = List List a
реально становится бесконечно вложенным листом
источник

к

кана in Haskell
[BRM]White Rabbit
Ты этот тип никогда не создашь
да почему
источник

к

кана in Haskell
x = List (0, x)
источник

[

[BRM]White Rabbit in Haskell
А, ну, да, я как-то не подумал, что в хаскеле можно делать определения через самих себя
источник

к

кана in Haskell
достаточно полезный и удобный тип, есть в либах (  https://hackage.haskell.org/package/Stream-0.4.7.2/docs/Data-Stream.html ) , я думал что он есть и в base
источник

к

кана in Haskell
[BRM]White Rabbit
А, ну, да, я как-то не подумал, что в хаскеле можно делать определения через самих себя
можно и не через самого себя

nats = go 0 where go n = List n (go (n + 1))
источник

к

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

https://github.com/kana-sama/bfhs/blob/master/src/Brainfuck/Tape.hs
источник

O

Ortofax in Haskell
[BRM]White Rabbit
Вот
List a = List List a
реально становится бесконечно вложенным листом
главное data List a = List a !(List a) не делать - такой уже создать не получится
источник

[

[BRM]White Rabbit in Haskell
кана
когда-то давно я таким образом моделировал память для брейнфака, два бесконечных стрима в разные стороны, и удобное хождение право/влево, без матчинга пустых списков

https://github.com/kana-sama/bfhs/blob/master/src/Brainfuck/Tape.hs
Хы
А у меня есть конвертер текста в бф-код, который печатает нужный текст
источник

[

[BRM]White Rabbit in Haskell
[BRM]White Rabbit
Хы
А у меня есть конвертер текста в бф-код, который печатает нужный текст
Правда, мне тогда было лень придумывать годный алгоритм и я использовал только перые две ячейки
источник

к

кана in Haskell
Ortofax
главное data List a = List a !(List a) не делать - такой уже создать не получится
создать все еще получится, сматчить не получится
источник

к

кана in Haskell
я правда сейчас понял, что не понимаю, почему не получится
источник

O

Ortofax in Haskell
разве что как undefined
источник

к

кана in Haskell
data X = X !X
x = X x

f (X x) = print 1

тут же шаринг, откуда беретется бесконечный цикл-то
источник

к

кана in Haskell
x внутри паттерна в f долженн ссылаться на топлевелый x
источник

к

кана in Haskell
или ! и шаринг отключает тоже
источник

O

Ortofax in Haskell
проблема в том, что аргумент строгий
источник

к

кана in Haskell
ну так и что, строгая конкретная ссылка на сам x
источник

O

Ortofax in Haskell
вычисление зафорсится
источник