[Lisp] 따옴표 평가 방지와 리스트 함수

[원본 링크]

리습에서는 실상 모든 리스트를 함수로 평가하려고 한다.

가령 아래의 코드에서도 (+ 123 456)을 먼저 평가하고 해당하는 값으로 대체하는 것이다. image

image

근데 저 리스트 자체를 값으로 사용할순 없을까? 된다! 저 리스트 앞에다 따옴표를 하나 붙이면 된다. image

image

그리고 원래는 리스트의 첫번째 값을 함수명으로 인식하고 평가하려 들기 때문에, 다음과 같은 단순 값의 나열은 에러를 뱉는다. image

image

하지만 이 또한 따옴표를 붙이면 해결된다. image

image

리스트값에 대한 이런저런 함수들도 제공된다. image

image  참고로 list 함수는 인자를 리스트로 묶어주기 때문에, '(1 2 3) 같은 표현 대신 (list 1 2 3)과 같이 표현을 할 수도 있다.

이런것들도 있고 image

image

append를 사용하면 리스트를 이어붙일수 있고 image

image

nth를 사용하면 특정 인덱스에 접근이 가능하다. image

image

length로 길이계산도 된다. image

image


그렇다.