Reusing AP Node in G-machine

G-machine 에서의 AP 노드 재사용

  • Joo, Sung-Yong (Dept. of Computer Engineering, Dong-A University) ;
  • Woo, Gyun (Dept. of Computer Engineering, Dong-A University)
  • 주성용 (동아대학교 컴퓨터공학과) ;
  • 우균 (동아대학교 컴퓨터공학과)
  • Published : 2002.11.15

Abstract

G-machine은 지연 함수형 언어를 효율적으로 구현하기 위한 추상기계이다. G-machine은 축약 과정에서 생성되는 그래프를 저장하기 위해서 많은 기억장소를 필요로 한다. 본 논문은 힙에 할당되는 그래프 노드 중 AP 노드를 재사용하는 방법을 제시한다. 일반적으로 AP 노드를 루트로 하는 그래프가 한 단계 축약된 후 다시 AP 노드를 루트로 하는 그래프로 구성되어지는 경우 루트 노드를 재사용할 수 있다. 이를 위해서는 기존 G-machine을 약간 확장 시켜야 하는데, 본 논문에서는 AP 노드의 일부를 변경하기 위한 명령어 UPDL과 UPDR을 제시하고, 이들 명령어의 상태변환 규칙과 이들 명령어 생성을 위해 수정된 R-변환 규칙을 제시한다. 본 논문에서 제시하는 방식으로 기 생성된 AP 노드를 재사용함으로써 힙 기억공간의 사용량을 줄일 수 있고, 이 과정에서 힙 기억장소 할당과 쓰기 연산의 수를 줄일 수 있다.

Keywords