728x90
모든 컬렉션은 불변immutable이고 존속적persistent이다.
- cons 를 통해 컬렉션에 요소를 요청하게 되면, 원래의 컬렉션은 변하지 않고, 단지 그 요소가 추가된 새로운 버전의 컬렉션이 반환된다.
- 존속(persistent)이란 구조 공유(structual sharing)라는 기법으로 컬렉션의 신규 버전이 효율적으로 만들어진다는 것을 의미한다. 존속이라는 개념은 저장장치와 관련이 없고, 데이터가 갱신되었지만, 이전 버전의 값이 지워지지 않고 그대로 보존됨을 의미한다.
컬렉션은 다음의 함수를 지원한다.
- 시퀀스 함수 (first, rest, last) 를 지원한다.
- count 함수는 컬렉션의 크기를 반환한다.
- conj 함수는 컬렉션에 하나 이상의 요소를 추가한다. 그 컬렉션의 데이터 구조에 가장 효율적인 방식으로 추가한다. 벡터의 경우 맨 뒤에 요소를 추가한다. 리스트의 경우에 맨 앞에 추가한다.
728x90
'프로그래밍 Programming' 카테고리의 다른 글
클로저 06. 데이터 컬렉션 - 집합 (0) | 2018.08.17 |
---|---|
클로저 05. 데이터 컬렉션 - 맵 (0) | 2018.08.17 |
클로저 03. 데이터 컬렉션 - 벡터 (0) | 2018.08.17 |
리눅스 계정 및 홈디렉토리 삭제 (0) | 2018.08.14 |
클로저 02. 데이터 컬렉션 - 리스트 (0) | 2018.08.13 |