Size: a a a

2020 May 10

SD

Sunny Daily in Haskell
() это значение конкретного типа
источник

AV

Alexander Vershilov in Haskell
У тебя может быть любой конструктор Matrix
источник

к

кана in Haskell
мб там ()-значение из-за DataKinds
источник

AV

Alexander Vershilov in Haskell
А a и b  надо передать до того как поматчил
источник

AV

Alexander Vershilov in Haskell
Неважно
источник

IK

Ilya Kos in Haskell
Alexander Vershilov
А a и b  надо передать до того как поматчил
А они разве не ограничат тип который можно будет передать последним?
источник

AV

Alexander Vershilov in Haskell
Вот написать:
index a b (One x) = case (a,b) of
  ((), ()) ->


может и можно будет
источник

AV

Alexander Vershilov in Haskell
Но не уверен
источник

IK

Ilya Kos in Haskell
да, такое прокатит
источник

IK

Ilya Kos in Haskell
ужас какой
источник

IK

Ilya Kos in Haskell
Alexander Vershilov
Вот написать:
index a b (One x) = case (a,b) of
  ((), ()) ->


может и можно будет
Тут же смысл абсолютно такой же
источник

IK

Ilya Kos in Haskell
мне это кажется странным, что одно можно, а другое нельзя
источник

к

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

к

кана in Haskell
но да, оч странно
источник

AV

Alexander Vershilov in Haskell
index () () (One x)
index 1 4 (Many x)
источник

AV

Alexander Vershilov in Haskell
Кажется мне более странным
источник

AV

Alexander Vershilov in Haskell
Но вообще когда матчишь конструктор, то контекст доступен в правой части уравнения, а не в левой
источник

AV

Alexander Vershilov in Haskell
index (One x) = \() () -> тоже думаю сработает
источник

к

кана in Haskell
да и inder One () () тоже сработает
источник

к

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