generated at
直和型

可能な型を列挙した型
その型の値は、どれかの一つである必要がある
複数にまたがることはできない



data Either a b = Left a | Right b
a+b種類の値を持つ
交換律, 結合律を満たす
例えば3のデータ型同士の加法を考える
hs
data Three = A | B | C Either Three Three -- これが取りうるのは -- ①Right A -- ②Right B -- ③Rihgt C -- ④Left A -- ⑤Left B -- ⑥Left C -- よって6つ





言語例
Haskell
hs
data Week = Sun | Mon | Tue | Wed | Thu | Fri | Sat
hs
data Either a b = Left a | Right b
TSのUnion型?


参考