Haskell'de bir veri türü tanımlarken bazı örnekleri otomatik olarak türetmeyi seçebilirsiniz, ancak otomatik türetmeyi erteleyebilir miyim, belki de başka bir kitaplığa koyabilir miyim? HaskellBildirimden sonra türetilen otomatik örnek
Otomatik türetilmesi gerçek bir zaman tasarrufu: Burada
bir örnektir!module MoneyModule where
data Money = Money Int
deriving Show
Şimdi MoneyModule
kullanmak isteyen, ama ben de Money
için Read
örneğini istiyorum: Ben ghc olabilir biliyorum ki,
module ExternalModule where
instance Read Money where
read = error "Can't this be done automatically instead?"
Ama otomatik elde edildiği için ben gerçekten tercih ederdik MoneyModule yazarı, Read
örneğini otomatik olarak türetmiş olsaydı yapmışlardı.
bunu biliyorum:
- Kayıp örneği ile düzeltme tarafından fiili
MoneyModule
sorunu çözmek için daha iyidir. - Yetim durumlarının olması kötü sayılır. Örnek bildirimleri, tercihen, tür sınıfının veya türünün tanımlandığı bir modüle yerleştirilir.
Benim durumumda, tür sınıfının ilişkisiz olması nedeniyle en iyi uygulamaları takip edemiyorum; veri türü . Tür sınıfı modülünün veya veri türü modülünün örneğini tutmak istediğinden şüphe duyuyorum, bu yüzden bazı uygulamalarında örnek bildirime gereksiniminiz olduğundan üçüncü bir kitaplık oluşturuyorum.