1) Tôi có một công đoàn mở được định nghĩa như sau:Loại nghĩa với đoàn thể mở
type 'a choice = [> `One | `Other ] as 'a
sau đó tôi cố gắng xác định một loại choice_list:
type choice_list = choice list
mà không hoạt động. Làm thế nào để xác định loại mà một hoặc nhiều thành phần là công đoàn mở?
2) Nếu thay vào đó tôi forgo tạo kiểu choice_list
, và chỉ sử dụng một choice list
, khi tôi cố gắng viết một tuyên bố giao diện/chữ ký sử dụng một danh sách lựa chọn,
val choice_handler : choice list -> int
trình biên dịch phàn nàn rằng type 'a choice = 'a constraint 'a = [> `One | `Other ] is not included in type infection_state. They have different arities
.
Câu hỏi của tôi là, làm cách nào để viết khai báo loại danh sách lựa chọn trong giao diện/chữ ký.