primitive Amber primitive Blue primitive Crimsen primitive Other type Color is (Amber | Blue | Crimsen | Other) primitive Properties fun list(): Array[Color] => [Amber, Blue, Crimsen, Other] fun name(x: Color): String => match x | Amber => "amber" | Blue => "blue" | Crimsen => "crimsen" else "an other color" end