본문으로 이동

커먼 리스프

위키백과, 우리 모두의 백과사전.

커먼 리스프 또는 커먼 리습(Common Lisp)은 리스프 언어의 일종이다. 종종 CL로 줄여 부르기도 한다. 이미 있는 다양한 리스프 변종들을 표준화하기 위한 목적으로 개발되었으며, ANSI X3.226-1994 이 표준번호이다. 리스프 방언들 중에 스킴과 함께 가장 널리 쓰이고 있다. 커먼 리스프는 함수형 프로그래밍 뿐 아니라 절차형 프로그래밍, 객체 지향 프로그래밍 등 다양한 패러다임을 지원한다.

문법[편집]

커먼 리스프는 리스프이다. 따라서 S-표현식으로 코드와 데이터 구조를 모두 나타낸다. 함수와 매크로 호출은 이름을 제일 처음에 쓴 리스트 형식으로 씌여진다. 다음의 예를 보라.

 (+ 2 2)           ; 2와 2를 더한다. 4를 반환한다.

 (setf p 3.1415)  ; 변수 "p"에 값 3.1415를 넣는다.
 ; "pi" is a built-in constant; can't setf it

 ; 수를 받아 제곱을 반환하는 함수를 정의한다.:
 (defun square (x) (* x x))

 ; 정의된 함수를 수행한다.:
 (square 3)        ; 반환값은 "9"

 ; 컨스트럭션 - 'let' 블록 안에서만 존재하는 변수. 범위 바깥에서 해당 변수의 값이 얼마든
 ; 간에 그 변수에 영향을 주지 않고 변수를 사용할 수 있다. 같은 이름의 변수가 바깥에
 ; 있다면 블록에 들어오기 전에 그 변수의 값은 따로 저장되었다가 블록을 나오면서 원래 값
 ; 을 복원한다.
 (let ((a 6) (b 4)) (+ a b)) ; 10 을 반환한다.

외부 링크[편집]

e-book[편집]

구현[편집]