종속 유형 이론의 모델링 객체 (OOP)


13

객체 지향 프로그래밍에서 종속 유형 이론으로 객체를 모델링하는 데 관심이 있습니다. 가능한 응용 프로그램으로, 명령형 프로그래밍 언어의 다른 기능을 설명 할 수있는 모델을 갖고 싶습니다.

종속 유형 이론에서 객체 모델링에 관한 논문을 하나만 찾을 수 있었다
. A. Setzer (2006)의 종속 유형 이론에서의 객체 지향 프로그래밍

내가 놓친 주제에 대한 추가 참조가 있고 아마도 더 최근의 주제가 있습니까?

Coq 나 Agda와 같은 정리 증명을 위해 구현 (예 : 증명)이 있습니까?

답변:


6

이 지역에서 수행 된 초기 (?) 작업은 Bart Jacobs (Nijmegen)와 Marieke Huisman이 수행했습니다. 그들의 작업은 PVS 도구를 기반으로하며 클래스의 대수적 인코딩에 의존합니다 (정확하게 기억한다면). 2000 년 논문과 2001 년 박사 논문에 대한 Marieke의 출판 페이지참조하십시오 . 또한 언급 한 A Setzer 논문에 인용 된 Bart Jacobs의 논문도보십시오.

그 당시에는 LOOP 도구라는 것이 있었지만 인터넷에서 사라진 것 같습니다.

OO 프로그램의 공식 검증을 다루는 FTfJP (Java 유사 프로그램의 공식 기술) 로 알려진 워크샵 시리즈가 있습니다. 의심 할 여지없이 일부 작업은 종속 유형 이론 / 고차 논리를 사용합니다. 워크숍 시리즈는 약 14 년 동안 운영되었습니다.


3

Andreas Abel, Stephan Adelsberger, Anton Setzer : Agda-Objects 및 Graphical User Interfaces의 대화식 프로그래밍 이 상당히 확장되었습니다 . 여기에는 GUI를 포함하여 객체 기반 프로그램을 작성하기위한 Agda 라이브러리 가 포함되어 있습니다 . Stephan Adelsberger와 함께 객체 지향 프로그래밍을 기반으로 Agda의 의료 영역에서 검증 된 GUI를 작성하는 것에 대한 후속 논문이 있습니다.



2

왜보고있어? OOP를 표현하기 위해 종속 유형 이론을 있습니까? 비 의존적 계산법으로 만족스러운 방식으로 OOP를 모델링 할 수 없습니까? 예를 들어 System F (또는 제네릭을 지원하려는 경우 Fω)로 변환 할 때 OOP의 모양에 대한 비공식 모델이 있으며 유형 값 종속성이 어디에서 발생하는지 알 수 없습니다.

예를 들어, 종속 유형을 사용하여 대수 데이터 유형에 낮은 수준의 의미를 부여 할 수 있습니다. OO 기능의 저수준 인코딩을 수행 할 수도 있지만 모델링 언어에 대수 데이터 유형을 추가하는 것보다 낫지는 않습니다.

어쩌면 당신은 같은, 현재이 지정되지 않은 있습니다 OOP 구조에 미세한 정적 의미주고 싶은 instance_ofa로 다음을 cast. 의존형 해커가 그러한 프로그램에 대해 정적으로 추론하는 데 유용하다는 것을 알 수 있습니다. 그러나 동적 각도에 집중하는 작업을 "모델링"할 것인지 확실하지 않습니다.


이것은 질문에 대한 답변이 아닙니다. 이 토론 포럼이 아닙니다.
Dave Clarke
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.