Skip to main content
QUICK REVIEW

[논문 리뷰] Customisable handling of Java references in prolog programs

Sergio Castro Mejia, Kim Mens|arXiv (Cornell University)|2014. 01. 01.
Logic, programming, and type systems참고 문헌 16인용 수 1
한 줄 요약

이 논문은 참조 표현, 투명성, 정체성 유지, 생명주기 관리 등의 핵심 차원을 다루면서, Prolog 프로그램에서 Java 객체 참조를 표현하고 관리하기 위한 사용자 정의 가능하고 이식 가능한 접근 방식을 제안한다. JPC 라이브러리를 확장하여 SWI, YAP, XSB의 세 가지 주요 Prolog 엔진을 지원함으로써, Prolog 엔진 환경에 대한 최소한의 가정을 바탕으로 언어에 구애받지 않는 원활한 상호운용성을 실현한다.

ABSTRACT

Integration techniques for combining programs written in distinct language paradigms facilitate the implementation of specialised modules in the best language for their task. In the case of Java-Prolog integration, a known problem is the proper representation of references to Java objects on the Prolog side. To solve it adequately, multiple dimensions should be considered, including reference representation, opacity of the representation, identity preservation, reference life span, and scope of the inter-language conversion policies. This paper presents an approach that addresses all these dimensions, generalising and building on existing representation patterns of foreign references in Prolog, and taking inspiration from similar inter-language representation techniques found in other domains. Our approach maximises portability by making few assumptions about the Prolog engine interacting with Java (e.g., embedded or executed as an external process). We validate our work by extending JPC, an open-source integration library,with features supporting our approach. Our JPC library is currently compatible with three different open source Prolog engines (SWI, YAP and XSB) by means of drivers

연구 동기 및 목표

  • Prolog 프로그램에서 Java 객체 참조를 정체성과 생명주기를 유지하는 방식으로 표현하는 데 도전하는 것.
  • 기존 Prolog의 외부 참조 패턴을 일반화하여 다중 상호작용 차원을 지원하는 것.
  • Prolog 엔진 환경에 대한 가정을 최소화하여 다양한 실행 모델(통합형 또는 외부 프로세스) 간의 이식성을 향상시키는 것.
  • 다양한 언어 간 참조 변환 정책을 관리하기 위한 민첩하고 확장 가능한 프레임워크를 제공하는 것.
  • 오픈소스 JPC 라이브러리에 통합을 통해 접근 방식을 검증함으로써, 여러 Prolog 엔진과의 호환성을 보장하는 것.

제안 방법

  • Prolog에서 Java 객체의 투명성, 정체성 유지, 제어된 생명주기 관리를 지원하는 참조 표현 모델 설계.
  • 범위와 동작 방식을 사용자 정의할 수 있는 정책 기반의 참조 변환 메커니즘 정의.
  • 엔진에 특화된 세부 정보를 추상화하고 Prolog 엔진 간 호환성을 보장하기 위해 JPC 라이브러리에 드라이버 기반 아키텍처 구현.
  • 기타 도메인에서 기존의 언어 간 표현 기법을 활용하여 참조 의미 체계 설계에 영감을 주는 것.
  • 엔진에 특화된 실행 방식에서 분리된 참조 의미 체계를 제공하기 위해 JPC에 사용자 정의 가능한 참조 처리 패턴을 확장.
  • SWI, YAP, XSB의 세 개의 오픈소스 Prolog 엔진에서의 배포 및 테스트를 통해 접근 방식을 검증하는 것.

실험 결과

연구 질문

  • RQ1어떻게 하면 Java 객체 참조를 Prolog에서 정체성을 유지하고 제어된 생명주기 관리를 지원하는 방식으로 표현할 수 있는가?
  • RQ2다양한 실행 모델을 가진 서로 다른 Prolog 엔진 간에 외부 참조를 이식 가능하게 처리하기 위한 설계 원칙은 무엇인가?
  • RQ3다양한 언어 간 통합 패턴에 걸쳐 통합된 참조 관리 모델을 얼마나 일반화할 수 있는가?
  • RQ4어떻게 하면 참조 표현의 투명성과 범위를 제어하여 안전하고 효율적인 상호운용성을 지원할 수 있는가?
  • RQ5언어 간 참조 변환을 정책 기반으로 접근할 경우 실용적인 성과와 상충 요소는 무엇인가?

주요 결과

  • 제안된 접근 방식은 여러 Prolog 엔진 간에 일관된 Java 객체 참조 표현 및 관리를 성공적으로 지원한다.
  • JPC 라이브러리 확장은 공통 추상화 계층을 사용하여 SWI-Prolog, YAP, XSB Prolog 엔진과 원활한 통합을 가능하게 한다.
  • 설계는 Prolog 엔진 환경에 대한 가정을 최소화하여 이식성과 재사용성을 향상시킨다.
  • 이 접근 방식은 참조 처리의 다중 차원을 통합함으로써 기존 Prolog의 외부 참조 패턴을 일반화하고 확장한다.
  • 드라이버 기반 설계 덕분에 엔진에 특화된 적응이 가능하면서도 참조 관리에 대한 통일된 인터페이스를 유지할 수 있다.
  • 참조 변환을 위한 사용자 정의 정책을 지원함으로써 범위, 수명 주기, 가시성에 대한 세밀한 제어가 가능해진다.

더 나은 연구,지금 바로 시작하세요

연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.