Size: a a a

2021 May 13

IK

Ilya Kos in Haskell
Я не понимаю что это значит
источник

IK

Ilya Kos in Haskell
Можешь пример привести
источник

IK

Ivan Kretov in Haskell
data TypedGradeBlock = StringGradeBlock { grade_type :: String, string_grades :: [String] }
                    | IntGradeBlock { grade_type :: String, int_grades :: [Int] }
                    deriving (Show, Eq)

dvg = [StringGradeBlock "GCE" ["A","A*"], IntGradeBlock "USE" [1..10]]

invoke = map string_grades dvg


а надо что то типа
map ( string_grades || int_grades ) dvg
источник

IK

Ilya Kos in Haskell
1. Какой тип должна вернуть map?
источник

IK

Ilya Kos in Haskell
Int или String?
источник

IK

Ilya Kos in Haskell
Или она должна вернуть Either?
источник

IK

Ilya Kos in Haskell
Наверное Either
источник

IO

I O in Haskell
А какие типы у string_grades и int_grades?
источник

IK

Ilya Kos in Haskell
Советую написать хелпер-функцию TypedGradeBlock -> Either [Int] [String]
источник

IK

Ilya Kos in Haskell
И ее уже передать в map
источник

IK

Ivan Kretov in Haskell
[String] и [Int]
источник

IK

Ilya Kos in Haskell
Это аксессоры полей
источник

IO

I O in Haskell
А, я слепой, сори
источник

IK

Ilya Kos in Haskell
В этом вопросе ты хочешь чтобы была какая-то стандартная функция, которая знает внутреннюю структуру твоего типа. А так стандартных функций нет. Ты должен сам описать, как работать с внутренним представлением твоих типов – как раз та самая хелпер-функция, про которую я говорю
источник

IK

Ivan Kretov in Haskell
Ок
источник

IK

Ivan Kretov in Haskell
Просто не охота прописывать Either опять, думал может как то можно это обыграть
источник

a

adam in Haskell
Control+~ открываем терминал
источник

K

Kir in Haskell
Есть пакет biplate, конечно, но это как динамитом сорняки корчевать. Хотя может и подойдёт.
источник
2021 May 14

MK

Maxim Koltsov in Haskell
источник

MK

Michael Korobkov in Haskell
Всем привет. Не шарю за Haskell, но шарю за FPGA. Есть тут кто - нибудь кто делает проекты для ПЛИС на Haskell / Clash ? :)
источник