2010-07-03 4 views

답변

2

일부 연구를 마친 후 나는 그렇다고 대답 할 것이다. 그들은 관련 개념 인 것처럼 보인다.

JS의 범위 체인은 체인의 한쪽 끝에 현재 실행중인 범위의 컨텍스트와 다른 곳의 전역 범위와 함께 실행 컨텍스트 (변수 바인딩 등)의 목록을 유지 관리합니다. 자유 변수를 참조하는 클로저를 만들려면 클로저에 도달 할 수있는 한 해당 컨텍스트 목록을 보유해야합니다.

루비 바인딩 개체의 문서는 말한다 : 일부 특정 코드를 취하게하고 에서 클래스 바인딩 캡슐화 실행 컨텍스트의

객체는 나중에 사용하기 위해이 상황을 유지합니다. 자기의 변수, 메소드, 값, 그리고 이이 컨텍스트에서 액세스 될 수있는 반복자 블록은 모두 입니다. 바인딩 객체는 커널 # 바인딩을 사용하여 생성 된 일 수 있으며 커널 # set_trace_func의 콜백에서 사용 가능한 입니다.

이러한 바인딩 개체는 Kernel # eval 메서드의 두 번째 인수로 전달할 수 있으며 평가를 위해 환경을 설정합니다.

Binding이 구현되는 방법에 대한 내용은 잘 모릅니다 만, 향후 평가를 위해 컨텍스트를 저장하는 것과 같은 목적을 수행하는 것으로 보입니다.