Bu veri türü, coerce
öğesinin, listeye geçmeye gerek kalmadan öğelere uygulanan yeni türler eklemek veya kaldırmak için kullanılmasına olanak tanıyan type role HCons' representational representational
olabilir. bu GADT'nin aslında tür rol temsilciliği var
data HNil' = HNil'
data HCons' a b = HCons' a b
Ancak bu listelere için sözdizimi, ben
convert between these two representations bir sınıf var aşağıdaki GADT
data HList (l::[*]) where
HNil :: HList '[]
HCons :: e -> HList l -> HList (e ': l)
olanlar kadar güzel Prime (HList [a,b]) ~ HCons' a (HCons' b HNil')
böyle değildir. Bu sınıf
güvenli midir?
FWIW, evet, öyle düşünüyorum. Ama aslında ikna edici bir argüman yapmak için rollerin içselleri hakkında yeterince bilgim yok. Örneğiniz, mevcut rol sisteminin yeterince etkileyici olmadığı başka bir durum gibi görünüyor. – kosmikus