1) मैं एक खुली संघ इस प्रकार परिभाषित किया गया है:प्रकार परिभाषाओं
type 'a choice = [> `One | `Other ] as 'a
मैं तो एक प्रकार choice_list परिभाषित करने की कोशिश:
type choice_list = choice list
जो काम नहीं करता। कैसे एक प्रकार को परिभाषित करता है जहां एक या अधिक घटक खुले यूनियन हैं?
2) के बजाय मैं choice_list
प्रकार बनाने छोड़, और सिर्फ एक choice list
उपयोग करते हैं, जब मैं एक अंतरफलक/हस्ताक्षर बयान एक विकल्प सूची का उपयोग कर लिखने का प्रयास करें,
val choice_handler : choice list -> int
संकलक शिकायत है कि type 'a choice = 'a constraint 'a = [> `One | `Other ] is not included in type infection_state. They have different arities
हैं।
मेरा सवाल यह है कि, इंटरफ़ेस/हस्ताक्षर में पसंद सूची की प्रकार की घोषणा कैसे लिखती है।