Development of the incremental compression algorithm for the efficient multi-method dispatch implementation

효율적인 멀티메쏘드 디스패치 구현을 위한 점진적 압축알고리즘 개발

  • 장문종 (한국전력공사 전력연구원)
  • Published : 2002.07.10

Abstract

대부분의 객체 지향 언어들은 여러 가지 연산을 구현하기 위한 방법으로 메쏘드(method)를 이용한다. 메쏘드는 생성함수(generic function)의 타입에 관련된 행동을 정의한다. 이런 메쏘드들이 서로 구별되는 인수를 이용해서, 생성 함수가 프로그램 수행시에 불려질 때 인수의 타입에 따라 어느 메쏘드를 수행할지 결정한다. 이런 메쏘드의 선택 과정은 가장 적용되기 가까운 메쏘드(most specific applicable method, MSA)를 구하기 위해서 단일의 인수를 사용할 것이냐, 모든 인수를 활용할 것이냐에 따라 단일 메쏘드와 다중 메쏘드로 구분된다. 이런 메쏘드를 선택하기 위해서 구현하는 방법으로는 캐슁이나 인라인 디스패치 테이블, 컬러링 기법이 있다. 본 논문에서는 디스패치 테이블을 이용한 기법에서 공간의 낭비없이 효율적으로 멀티메쏘드 디스패치를 구현할 수 있는 점진적 압축알고리즘을 제시한다.

Keywords