Size: a a a

2021 January 03

YS

Yan Shkurinskiy in Haskell
в общем, CAF'ов во втором случае точно больше)
источник

IK

Ilya Kos in Haskell
Я хочу получить opaque type synonym
источник

IK

Ilya Kos in Haskell
Чтобы когда инстанс нет, он писал имя этого type synonym, а не какого-то тайпкласса, который там внутри сидит
источник

IK

Ilya Kos in Haskell
Ilya Kos
Я хочу получить opaque type synonym
Contraint synonym*
источник

IK

Ilya Kos in Haskell
источник

IK

Ilya Kos in Haskell
Но у меня оно не пройдет потому что у меня там multiparam typeclass с fundeps
источник

IK

Ilya Kos in Haskell
И из-за fundeps не могу сделать инстанс для какого-нибудь Opaque
источник

IK

Ilya Kos in Haskell
Не знаю что делать
источник

к

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

IK

Ilya Kos in Haskell
Ну у меня есть какой-то Foo a b c | a b -> c
источник

IK

Ilya Kos in Haskell
И я хочу сделать type Syn a b c = (Foo a b c, Bar a b)
источник

IK

Ilya Kos in Haskell
Но чтобы в ошибках Foo не было, т к он не входит в API
источник

IK

Ilya Kos in Haskell
И пользователю будет не понятно
источник

IK

Ilya Kos in Haskell
Я хочу чтобы он говорил “не могу найти Syn”, когда на самом деле нет Foo
источник

IK

Ilya Kos in Haskell
Т е мне на самом деле мешает фандеп
источник

к

кана in Haskell
хм
источник

к

кана in Haskell
а блин, ошибка не та все равно
источник

IK

Ilya Kos in Haskell
Стоило мне написать в чат, сразу придумал как решить
источник

IK

Ilya Kos in Haskell
Не первый раз уже
источник

IK

Ilya Kos in Haskell
Забавно что это так работает
источник