Если вы не можете изменить значение переменной в Haskell, как вы создаете структуры данных?
Согласно названию
У меня есть следующий код, который создает двоичное дерево поиска, но если я хочу, чтобы оно создавалось и изменялось динамически с пользовательским вводом, как бы мне это сделать, если я не могу изменить значение переменной в 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)
Заранее спасибо!