게시판 인덱스

 
 FAQFAQ   검색검색   멤버리스트멤버리스트   사용자 그룹사용자 그룹   사용자 등록하기사용자 등록하기 
 개인 정보개인 정보   비공개 메시지를 확인하려면 로그인하십시오비공개 메시지를 확인하려면 로그인하십시오   로그인로그인 

LETF에서, 새 env에 지금 함수의 정보를 담아두려면,

 
이 게시판은 잠겼으므로 글을 올리거나, 답변을 하거나 수정을 할 수 없습니다   이 주제는 잠겼으므로 답변을 하거나 수정을 할 수 없습니다     게시판 인덱스 -> 4190.310 Programming Languages (Fall 2007)
이전 주제 보기 :: 다음 주제 보기  
글쓴이 메시지
한재화
손님





올리기올려짐: 2007년10월6일 16:19    주제: LETF에서, 새 env에 지금 함수의 정보를 담아두려면, 인용과 함께 답변

LETF 가 재귀호출을 지원하게 하려면, env에 현재 함수 정보를 넘겨야하잖아요.
책에 나와있는 대로면,
코드:

σ'{x->l}{f-><x,E',σ'>}

이라고 되어있는데, 환경의 정의에 따르면, id->Addr 인 함수이고 <x,E',σ'>은 Addr의 타입인 Loc.t (=int) 가 아니지 않나요.
그렇다면 <x,E',σ'> 을 메모리에 넣어줘야 한다는 의미가 되는데요.
그리고 이 엔트리가 추가된 메모리를 넘겨야 하는거 맞나요? Confused

아, 그리고 Mem.allocate를 할때 size에 얼마를 넣어줘야 하는지 궁금합니다.
지금같이 3-tuple일 경우는 3을 넣어줘야합니까?
위로
한재화
손님





올리기올려짐: 2007년10월6일 16:27    주제: 교재에 이미 환경의 확장에 대해 정의되어있네요.. 인용과 함께 답변

교재 73쪽이 답이 된것 같습니다. Smile
위로
허기홍



가입: 2007년 9월 27일
올린 글: 231

올리기올려짐: 2007년10월7일 0:17    주제: Re: 교재에 이미 환경의 확장에 대해 정의되어있네요.. 인용과 함께 답변

엇.. 튜플을 어떻게 환경에 넣나요?
위로
사용자 정보 보기 비밀 메시지 보내기 이메일 보내기 글 올린이의 웹사이트 방문
한재화



가입: 2007년 10월 6일
올린 글: 25

올리기올려짐: 2007년10월7일 11:57    주제: 환경의 확장에 대한 정의를 따르면 됩니다. 인용과 함께 답변

Env의 정의 부분에 보면, 교재에서 환경을 확장하기 전에 정의로 되어있어요.
즉,
인용:

σ : Id -> Addr

로 되어있는데, 이것을
인용:

σ : Id -> Addr + Procedure

로 바꿔주면 됩니다. prodedure는 따로 정의하구요
위로
사용자 정보 보기 비밀 메시지 보내기
허기홍
손님





올리기올려짐: 2007년10월7일 12:31    주제: Re: 환경의 확장에 대한 정의를 따르면 됩니다. 인용과 함께 답변

아.. 이걸 못봤네..

재화 감사..

근데 그부분은 dynamic scoping 이고

우리 숙제는 뒷쪽에 static scoping 으로 하는게 맞지요?
위로
한재화



가입: 2007년 10월 6일
올린 글: 25

올리기올려짐: 2007년10월7일 12:46    주제: 넵. 그럴경우에 Procedure 부분이 바뀌겠지요. 인용과 함께 답변

75쪽에 있는 정의로요.
인용:

Procedure = Id * exp * env
위로
사용자 정보 보기 비밀 메시지 보내기
이전 글 표시:   
이 게시판은 잠겼으므로 글을 올리거나, 답변을 하거나 수정을 할 수 없습니다   이 주제는 잠겼으므로 답변을 하거나 수정을 할 수 없습니다     게시판 인덱스 -> 4190.310 Programming Languages (Fall 2007) 시간대: GMT + 9 시간(한국)
페이지 11

 
건너뛰기:  
새로운 주제를 올릴 수 없습니다
답글을 올릴 수 없습니다
주제를 수정할 수 없습니다
올린 글을 삭제할 수 없습니다
투표를 할 수 없습니다


Powered by phpBB 2.0.21-7 (Debian) © 2001, 2005 phpBB Group
Translated by kss & drssay