-- increment, add, func args
incr :: Int -> Int
incr n = n + 1
add :: Int -> Int -> Int
add m n = m + n
addBeforeFunc :: (Int -> Int) -> Int -> Int -> Int
addBeforeFunc f m n = add (f m) (f n)
main :: IO()
main = do
let x = 10
let y = 30
print $ addBeforeFunc incr x y