2011-03-19 3 views
1

연속체 (Scheme 및 Ruby)에 대한 지원에 익숙한 언어는 연속이 만들어 질 때부터 스택 상태 및 명령 포인터를 복원합니다. 연속 호출이 힙을 복원하는 프로그래밍 언어가 있는지 궁금합니다.연속체가 스택과 함께 힙을 복원하는 프로그래밍 언어가 있습니까?

[편집 :] 내가 받아 들인 Marcelo의 답변 외에도 효과적으로 설명하는 "상점"이라는 개념을 지원하는 ML의 확장을 발견했습니다. Greg Morrisett의 논문 Refining First Class Stores을 참조하십시오.

+0

힙 상태가 손실되면? – Mauricio

+0

죄송합니다. Mauricio에 대한 질문이 이해가되지 않습니다. 명확히 해 주시겠습니까? – cdiggins

답변

2

모든 객체가 Haskell에서 불변이므로, 연속은 힙을 포함하여 프로세스의 전체 상태를 복원한다고 말하는 것이 안전하다고 생각합니다.

I/O 및 기타 모나드 동작에 어떤 영향을 주는지 알아 보는 것은 흥미로운 일입니다. 타입 시스템이 I/O 이벤트가 발생하기 전의 상태로 되돌아가는 것을 허용하지 않을 것이라는 것은 당연한 생각입니다. (연속은 하나의 모나드이기 때문에 아마도 I/O와 인터리브 할 수 없을 것입니다.)

경고 : 나는 위스커린을 거의 알지 못하기 때문에, 위의 설명은 우스꽝스러운 웃기는 더미 일 수 있습니다.

관련 문제