AB
Size: a a a
AB
AB
[
instance MyShoy Int where myshow = 5B
template<class... T, class... U>
struct variant_union {
using type = std::variant<union_t<T..., U...>>;
type into(std::variant<T...>);
type into(std::variant<U...>);
};[
TK
[
f = putStrLn . showf = putStrLn . myshowB
TK
[
[
B
[
MyShow это нихера не Show с перегрузками, это просто класс, который для любого a заставляет иметь значение myshow, грубо говоря - нейтральный элемент. У этой хуйни любое значение кроме Void может иметь инстанс.а
а
[
[
[
B
а