Size: a a a

2021 February 09

KV

Kirill Valyavin in Haskell
Есть какая-нибудь готовая штука, чтобы траверсить рекорды (HKD) с индексами в виде текстового представления полей?
источник

к

кана in Haskell
"рекорды (HKD) с индексами в виде текстового представления полей"
это

data X f = X
 { a :: f "a" Int
 , b :: f "b" String
 }

?
источник

к

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

KV

Kirill Valyavin in Haskell
кана
"рекорды (HKD) с индексами в виде текстового представления полей"
это

data X f = X
 { a :: f "a" Int
 , b :: f "b" String
 }

?
Нет, в самих полях этого не должно быть
В barbies есть обычный травёрс по полям, но я хочу, чтобы каждое конкретное действие зависело от имени поля
источник

KV

Kirill Valyavin in Haskell
Т. е. я в хкд для каждого поля запихиваю действие, которое зависит от значения и от имени поля, а потом выворачиваю сиквенсом
источник

KV

Kirill Valyavin in Haskell
С обычным травёрсом зависимость от значения, но не от имени
источник

KV

Kirill Valyavin in Haskell
кана
"рекорды (HKD) с индексами в виде текстового представления полей"
это

data X f = X
 { a :: f "a" Int
 , b :: f "b" String
 }

?
В принципе это бы мне помогло, но это как-то убого
источник

к

кана in Haskell
а запихивать сразу в HKD действия, которые знают, в каком они поле - бойлерплейт?
источник

KV

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

KV

Kirill Valyavin in Haskell
Я знаю, как получить список значений полей и список имён по отдельности... И наверное не очень плохо будет это просто зипнуть
источник

JS

Jerzy Syrowiecki in Haskell
generic-sop подойдёт?
источник

к

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

KV

Kirill Valyavin in Haskell
Jerzy Syrowiecki
generic-sop подойдёт?
Да
источник

к

кана in Haskell
с HKD+generics-sop-ом сложность в том, что я не нашел какого-нибудь тривиального способа написать NP I [f a, f b] -> NP f [a, b]
источник

KV

Kirill Valyavin in Haskell
кана
с HKD+generics-sop-ом сложность в том, что я не нашел какого-нибудь тривиального способа написать NP I [f a, f b] -> NP f [a, b]
Оказывается, можно сгенерить имена через barbies-th, потом сделать bprod с имеющимся рекордом и потом уже травёрс
источник

ЗП

Зигохистоморфный Пре... in Haskell
Kirill Valyavin
Нет, в самих полях этого не должно быть
В barbies есть обычный травёрс по полям, но я хочу, чтобы каждое конкретное действие зависело от имени поля
мб тебе надо ttg там можно на каждый символ свою tf повесить
источник

KV

Kirill Valyavin in Haskell
Зигохистоморфный Препроморфизм
мб тебе надо ttg там можно на каждый символ свою tf повесить
Ну это же жесть
источник

к

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

KV

Kirill Valyavin in Haskell
Писать свою тф - всё равно тот же самый бойлерплейт
источник

KV

Kirill Valyavin in Haskell
На каждое поле
источник