Я заметил, что сегодня я играю с Haskell, что можно сделать что-то вроде
($ 4) (> 3)
что дает True
. Что здесь происходит? Было бы здорово иметь некоторую интуицию.
Мое предположение? Похоже, что ($ 4)
является неполным функциональным приложением, но я смущен тем, что $
- это инфиксный оператор, так что не должно выглядеть как (4 $)
? Это не скомпилируется, поэтому явно нет, что заставляет меня поверить, что я действительно не понимаю, что происходит. Термин (>3)
имеет смысл для меня, потому что если вы поставляете что-то вроде (\x -> x 4) (>3)
, вы получите тот же результат.