Size: a a a

2020 November 20

MK

Maxim Koltsov in Haskell
кана
а как завтипы работают по твоему?
Так в хаскеле то их нет
источник

DB

Danil Berestov in Haskell
Maxim Koltsov
Так в хаскеле то их нет
будут!
источник

к

кана in Haskell
в этом моменте мы уже получаем их функциональность
источник

AV

Alexander Vershilov in Haskell
поправил
источник

AV

Alexander Vershilov in Haskell
наверняка с +1/-1 наврал
источник

AA

A64m AL256m qn<co... in Haskell
Danil Berestov
А можно тогда чуть более полный код, а то непонятно, что после кейса делать
pn это прокси его надо пихать в функцию KnownNat n => Proxy n ->
источник

к

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

AV

Alexander Vershilov in Haskell
В общем в том виде 0 не представим
источник

к

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

x <- getInt
if x == 0 then <вот тут уже статически известно что x = 0 и можно отправлять в код, который требует 0> else ..
источник

к

кана in Haskell
и поэтому это и работает
источник

DB

Danil Berestov in Haskell
A64m AL256m qn I0
pn это прокси его надо пихать в функцию KnownNat n => Proxy n ->
Тогда нужно бует все числа литералами писать?
источник

AA

A64m AL256m qn<co... in Haskell
Maxim Koltsov
Так в хаскеле то их нет
шоб это работало завтипы не нужны, нужны экзистенциальные типы.
завтипы нужны шоб писать все функции не трижды: для значений, для синглетонов и для типов а один раз
источник

AA

A64m AL256m qn<co... in Haskell
Danil Berestov
Тогда нужно бует все числа литералами писать?
нет, число можно откуда угодно брать
источник

DB

Danil Berestov in Haskell
A64m AL256m qn I0
нет, число можно откуда угодно брать
А как тогда оно будет Known?
источник

AA

A64m AL256m qn<co... in Haskell
Danil Berestov
А как тогда оно будет Known?
но вот тот сниппет что я привел его таким делает
источник

DB

Danil Berestov in Haskell
Ну. то есть из IO же нельзя будет?
источник

DB

Danil Berestov in Haskell
A64m AL256m qn I0
но вот тот сниппет что я привел его таким делает
Ну дела
источник

MK

Maxim Koltsov in Haskell
Интересно что же я тогда не смог с символами сделать
источник

AA

A64m AL256m qn<co... in Haskell
Danil Berestov
Ну. то есть из IO же нельзя будет?
можно
источник

DB

Danil Berestov in Haskell
красиво
источник