Các HList package được dựa trên những gì là bây giờ cổ công nghệ Haskell. Câu hỏi đơn giản là: đưa ra tất cả các tính năng mới tuyệt vời của giá trị phát triển Haskell/GHC 8 năm qua, liệu một HList "hiện đại" có được xây dựng rất khác nhau không? Tôi nhận ra rằng câu trả lời ở đây có thể là không, đối với trường hợp cụ thể của HList, công nghệ được sử dụng sau đó vẫn tạo ra giải pháp thanh lịch nhất."Hiện đại" HList?
Tôi đã đọc nhiều tài liệu được ghi trên trang extensible records, đối thủ cạnh tranh thực sự duy nhất (nghĩa là đối thủ được triển khai dưới dạng thư viện có sẵn trên hackage) là records package. Hoặc có thiếu liên kết từ extensible records?
Tôi đã thảo luận về mối quan hệ giữa ống kính và hồ sơ mở rộng với Russell (O'Connor) chỉ sáng nay - và nó không rõ ràng. Ống kính là tuyệt vời cho abstracting get/set của một lĩnh vực duy nhất trong một tổng hợp, nhưng ít giỏi đại diện cho tổng hợp chính nó. Trong bất kỳ trường hợp nào, có vẻ như tôi nên gắn bó với HList (bây giờ), và sau đó cố gắng tìm ra số lượng biến thể nào tôi nên chọn để xử lý vấn đề này (đang dịch một số mã O'Caml sử dụng đa hình biến thể VÀ loại hàng VÀ Functors vào Haskell). –
Gần đây tôi đã tạo ra một điều lấy cảm hứng từ HList: đưa ra một điều được chỉ mục-coproduct (TIP) và {handler cho một trong các trường hợp} nó trả về {kết quả của trình xử lý} hoặc {TIP với một kiểu nhỏ hơn} . Xử lý chuỗi cùng với> => giảm trường hợp TIP theo từng trường hợp. Tôi nghĩ vào thời điểm nó sắp xếp mô hình phù hợp với các biến thể đa hình mô phỏng. –