Я работаю с библиотекой Haskell, которая описывает цифровые схемы (Lava), ее функциональные входы и выходы имеют тип сигнала (Signal Bool, Signal Int), насколько я знаю, что нет функции, которая преобразует изСигнал от Int до Int, я знаю, что есть несколько арифметических операций, которые мы можем использовать с типом Signal Int, но не все арифметические операции возможны.Я написал эту функцию, которая должна преобразовывать из Int в Signal (только для значений, которые мне нужны).
signalInt2int :: Signal Int -> Int
signalInt2int x = case x of
0 -> 0
1 -> 1
15 -> 15
_ -> 1000
Просто для попытки я написал только эти 4 возможности, проблема заключается в том, что всякий раз, когда я вызываю эту функцию, независимо от того, какой ввод, вывод всегда 1000. Я обязательно использую ввод типаСигнал Инт.Вот что я получаю.
![enter image description here](https://i.stack.imgur.com/OJWZM.jpg)
Кто-нибудь может указать, где проблема?Буду благодарен за вашу помощь.