함수의 3 법칙
https://livebook.manning.com/book/get-programming-with-haskell/chapter-2/1
-- Q2.2
inc x = x + 1
double x = x + x
square x = x^2
-- Q2.3
q231 n = if even n then n - 2 else 3*n+1
q232 n = if n `mod` 2 == 0 then n - 2 else 3*n+1
q233 n = if modX == 0 then n - 2 else 3*n+1 where modX = mod n 2
lambda, let
-- Lambda functions
(\\x -> x) 4
-> 4
-- 이렇게 값을 야매로 덮어 쓸 수 있다.
(\\x -> (\\x -> (\\x -> x) 4) 3) 2
-> 4
-- let을 사용해서 함수 내에서 값 재정의 하기
overwrite x = let x = 2 in let x = 3 in let x = 4 in x
튜플