Size: a a a

2020 November 12

DB

Danil Berestov in Haskell
Звучит как очень страшное расширение, но очень часто испольхуется
источник

KV

Kirill Valyavin in Haskell
Danil Berestov
Звучит как очень страшное расширение, но очень часто испольхуется
Значит так, когда компилятор говорит включить, то включаешь, а иначе нет. И нормально
источник

DB

Danil Berestov in Haskell
Звучит не очень
источник

KV

Kirill Valyavin in Haskell
Почему?
источник

DB

Danil Berestov in Haskell
Ну понимать бы хотелось, когда оно действительно надо
источник

KV

Kirill Valyavin in Haskell
Вот есть ещё АllowАmbiguousТypes, его компилятор тоже часто просит включить, но делать этого не нужно, пока не прочитаешь мануал
источник

KV

Kirill Valyavin in Haskell
Danil Berestov
Ну понимать бы хотелось, когда оно действительно надо
Так я и сказал, когда
источник

DB

Danil Berestov in Haskell
Kirill Valyavin
Так я и сказал, когда
Ну капец
источник

DB

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

AV

Alexander Vershilov in Haskell
Danil Berestov
будто компелятор тут самый умный
always has been
источник

KV

Kirill Valyavin in Haskell
Наоборот, он туповат и поэтому жалуется, что не может доказать терминируемость вывода инстанса, поэтому просит отключить проверку
источник

AV

Alexander Vershilov in Haskell
termination checker очень консервативный в ghc
источник

AV

Alexander Vershilov in Haskell
и можно доказать завершимость для малого числа интересных инстансов и куча ограничений
источник

DB

Danil Berestov in Haskell
Kirill Valyavin
Наоборот, он туповат и поэтому жалуется, что не может доказать терминируемость вывода инстанса, поэтому просит отключить проверку
То есть у меня может компиляция стек взорвать, если что не так?
источник

AV

Alexander Vershilov in Haskell
undecidableinstanes снимает эту проверку и заменяет на то, что кол-во шагов вывода будет ограничено
источник

IK

Ilya Kos in Haskell
Aleksandr Khristenko
Возможно у этого подхода с TH есть какие-то друге проблемы, интересно было бы узнать.
Меняешь один модуль -- пересобирается весь проект
источник

AV

Alexander Vershilov in Haskell
И если у тебя не выводится, то он долго подумает и скажет "шагов не хватило"
источник

AV

Alexander Vershilov in Haskell
Ilya Kos
Меняешь один модуль -- пересобирается весь проект
Что-то не то делаете
источник

DB

Danil Berestov in Haskell
Alexander Vershilov
И если у тебя не выводится, то он долго подумает и скажет "шагов не хватило"
А, понял
источник

IK

Ilya Kos in Haskell
Alexander Vershilov
Что-то не то делаете
Если поменялась зависимость, и в текущем модуле есть TH, то модуль пересобирается
источник