갈루아의 반서재

length는 리스트의 길이를 반환한다.

  1. Prelude> length [5,4,3,2,1]
  2. 5

null 은 리스트가 비어있는지 체크해서 True, False 를 반환한다. 

  1. Prelude> null [1,2,3]
  2. False
  3. Prelude> null []
  4. True

reverse 함수는 리스트를 반전시킨다.

  1. Prelude> reverse [5,4,3,2,1]
  2. [1,2,3,4,5]

take 함수는 숫자와 리스트를 인수로 갖고, 리스트의 처음부터 원소를 일정 갯수 가져온다. 

  1. Prelude> take 3 [5,4,3,2,1]
  2. [5,4,3]
  3. Prelude> take 1 [3,9,3]
  4. [3]
  5. Prelude> take 5 [1,2]
  6. [1,2]
  7. Prelude> take 0 [6,6,6]
  8. []
  9. Prelude>

해당 리스트에 포함된 원소의 갯수보다 많은 수를 입력하면, 그 리스트를 그대로 반환한다. 그리고 0 개를 가져오라고 하면 당연히 빈 리스트를 반환한다. 

drop 역시 비슷한 방식으로 작동한다. 단지 해당 갯수만큼 제거할 뿐이다. 

  1. Prelude> drop 3 [8,4,2,1,5,6]
  2. [1,5,6]
  3. Prelude> drop 0 [1,2,3,4]
  4. [1,2,3,4]
  5. Prelude> drop 100 [1,2,3,4]
  6. []

maximum 과 minimum 은 각각 가장 크거나 작은 값을 반환한다.

  1. Prelude> minimum [8,4,2,1,5,6]
  2. 1
  3. Prelude> maximum [1,9,2,3,4]
  4. 9

sum 은 리스트의 원소의 합을, 그리고 product 는 곱을 반환한다. 

  1. Prelude> sum [5,2,1,6,3,2,5,7]
  2. 31
  3. Prelude> product [6,2,1,2]
  4. 24
  5. Prelude> product [1,2,5,6,7,9,2,0]
  6. 0

elem 는 해당 원소가 리스트에 포함되어 있는지 여부를 확인해준다. 보통은 infix function 형태로 쓰인다.

  1. Prelude> 4 `elem[3,4,5,6]
  2. True
  3. Prelude> 10 `elem[3,4,5,6]
  4. False