Bölüm 3 ikili ağaç temsil etmesi için şu özyinelemeli türünü tanımlar 1 değeri:Gerçek Dünya Haskell Bölüm 3 excercise: ile İkili Ağacı yapıcısı
egzersiz tek bir değer Oluşturucu kullanarak aynı tip uygulamak gerekirdata Tree a = Node a (Tree a) (Tree a)
| Empty
deriving (Show)
, "Belki" türünü kullanarak alt düğümleri başvurmak için:
(sayfa 60 Bölüm 3 Alıştırma 2 itibaren) "bizim Java örnekte olduğu gibi, sadece tek bir yapıcı olan bir ağaç türü tanımlayın yerine Boş ait. kurucu, kullanmak için Belki türü refe Bir düğümün çocuklarına r "
data AltTree a = AltNode a (Maybe (AltTree a)) (Maybe (AltTree a))
deriving (Show)
Ancak bu gibi diğer boş ağaçları içeren bir ağaç için izin vermez:
ben ile geldi çözüm şudur
AltNode 1 (AltNode 2 Nothing Nothing) (AltNode 3 Nothing Nothing)
Ve değilim emin neden, "Belki" "Belki" türü için bir değer yapıcı değil mi?
Online'da gibi: [RWH> 3. Bölüm> Egzersizler] (http://book.realworldhaskell.org/read/defining-types-streamlining-functions.html#id585938) –