Jeśli nie możesz zmienić wartości zmiennej w Haskell, jak tworzysz struktury danych?
Zgodnie z tytułem.
Mam następujący kod, który tworzy binarne drzewo wyszukiwania, ale jeśli chcę go utworzyć i zmienić dynamicznie za pomocą danych wprowadzanych przez użytkownika, jak bym to zrobił, jeśli nie mogę zmienić wartości zmiennej w haskell?!?
find :: (Ord a) => Node a -> a -> Bool
find (Node val left right) s
| s == val = True
| s < val = find left s
| s > val = find right s
find Empty s = False
data Node a = Node a (Node a) (Node a)
| Empty
myTree = Node "m" (Node "a" Empty Empty)
(Node "z" Empty Empty)
Z góry dziękuję!