R6RS Scheme: 변수와 바인딩

R6RS Scheme: 변수와 바인딩

Scheme의 변수와 바인딩(binding) 개념을 설명해요. 식별자가 값을 담는 위치를 나타내는 방법과 바인딩 구문을 다뤄요.

출처: 문서

본문

Scheme는 식별자가 값을 담는 위치(locations)를 나타내는 것을 허용해요. 이 식별자들을 *변수(variables)*라고 불러요. 많은 경우, 특히 위치의 값이 생성된 후에 절대 수정되지 않을 때, 변수가 값을 직접 나타낸다고 생각하는 것이 유용해요.

(let ((x 23)
      (y 42))
  (+ x y))  ⇒ 65

이 경우 let으로 시작하는 표현식은 바인딩 구문이에요. let 뒤의 괄호 구조는 변수와 나란히 표현식을 나열해요: 변수 x23, 변수 y42가 나란히 있어요. let 표현식은 x를 23에, y를 42에 바인딩해요. 이 바인딩들은 let 표현식의 *본문(body)*에서만 유효해요,

(+ x
   y)

그리고 오직 거기서만 유효해요.

더 알아보기 (Learn more)

출처: Variables and binding - R6RS