Ben tip ve Haskell bir veri türü arasındaki farka olarak biraz karıştı. Ben farklı kavramlar olduğu izlenimini aldım karşılaşmış LiteratürdenHaskell'de tür ve veri tipi arasındaki fark nedir?
.
Ben tip ve Haskell bir veri türü arasındaki farka olarak biraz karıştı. Ben farklı kavramlar olduğu izlenimini aldım karşılaşmış LiteratürdenHaskell'de tür ve veri tipi arasındaki fark nedir?
.
Tip ve veri türü tam olarak aynı konsepte bakın. Haskell type
ve data
anahtar
olsa farklıdır: type
sadece bir tür eşanlamlı hale ederken data
, yeni bir cebirsel veri türünü tanıtmak için izin verir.
Terimler bazen karışık, ancak genellikle "veri türü", desen eşleştirebileceğiniz kuruculara sahip data
anahtar sözcüğünü kullanan bir türe karşılık gelir. Bunlar da cebirsel veri türleri olarak adlandırılır".
Sadece 'tip' benzeri newtype
, fonksiyon türlerini kullanarak ve oluşturulan ayrıca türlerini içeren daha genel bir terimdir.
Yani kendi kendine yazmak Integer vb? – user997112
resmini tamamlamak için, çok newtype'' vardır . newtype T = T a' ve 'veri T = T a' zor, ama oldukça önemlidir' arasındaki farkı kavrar. –
i örnek üzerinde newtype. Yani örnekteki ne fark olduğunu gördü? – user997112
@ user997112 'newtype', bir tür eşanlamlılık oluşturmak için kullanılan bir derleme zamanı türüdür, ancak farklı bir tür olarak ele alınır. Bunu bir 'veri' içine sarabilirsiniz, ancak çalışma zamanında bazı ek yükler ekleyebilir. Çalışma zamanı yükü olmadan, tür farklılaştırmasını istediğiniz derleyiciye açık. uzun hikaye: http://www.haskell.org/haskellwiki/Newtype – Ptival