λ> :t error error :: [Char] -> a λ> let x = 3 λ> x 3 λ> sumLastDigits 123214 5 λ> let x = 8 in x + (let y = 5 in y + 3) 16 λ> sumLastDigits 123214 5 λ> stripDigit 1231 123 λ> fact 10 3628800 λ> fact 0 1 λ> fact 5 120 λ> 2 #$% 5 18 λ> :t (("square", (^2)), 1.5) (("square", (^2)), 1.5) :: (Fractional t, Num a) => (([Char], a -> a), t) λ> :t (,) (,) :: a -> b -> (a, b) λ> pow(3,6) 720 λ> pow(3,6) 729 λ> :t pow pow :: (Eq a, Num a, Num a1) => (a1, a) -> a1 λ> 1:2:3:4:[] [1,2,3,4] λ> :t [[]] [[]] :: [[t]] λ> []:[] [[]] λ> [1]:[[]] [[1],[]] λ> [1,2,3]:[4,5,6]:[[]] [[1,2,3],[4,5,6],[]] λ> "" "" λ> :t "" "" :: [Char] λ> [] [] λ> :t [] [] :: [t] λ> [] :: [Char] "" λ> head [1,2,3] 1 λ> tail [1,2,3] [2,3] λ> head [] *** Exception: /home/trifon/fpsandbox/lists.hs:6:1-14: Non-exhaustive patterns in function head λ> tail [] *** Exception: /home/trifon/fpsandbox/lists.hs:8:1-16: Non-exhaustive patterns in function tail λ> null [] True λ> null [1] False λ> length [1,2,3] 3 λ> length [] 0 λ> [False .. True] [False,True] λ> length [1..1000] 1000 λ> [1..3]++[5..7] [1,2,3,5,6,7] λ> reverse [1..10] [10,9,8,7,6,5,4,3,2,1] λ> [1..10] !! 5 6 λ> [1..10] !! 55 *** Exception: Невалиден индекс λ> elem 3 [1..10] True λ> elem 33 [1..10] False λ> elem 3 [1..10] True λ> elem 33 [1..10] False λ> [1..5] == [1..10] False λ> null [] True λ> null [1..5] False λ> :t [(+),(-),(*)] [(+),(-),(*)] :: Num a => [a -> a -> a] λ> [(+),(-),(*)] == []