Мне, вероятно, не хватает чего-то правильного в документации, но я не могу понять этого - я учил себя Scala в основном путем пробного использования. и ошибка.
Для функции f: A => C
, как идиоматический способ выполнить следующие преобразования?
Либо [A, B] -> Либо [C , B]
Либо [B, A] -> Либо [B, C]
(Если у меня есть две такие функции и я хочу преобразовать обе стороны, могу ли я сделать все сразу или применить идиому дважды последовательно?)
Вариант [A] -> Вариант [C]
(у меня такое ощущение, что здесь предполагается использовать для (...) yield
как-то; я, наверное, просто убрать его, и я буду глупо, когда увижу ответ)
И что точно является «проекцией» Либо
, в любом случае?