게시판 인덱스

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

ASSIGN을 구현(?)하는데...

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





올리기올려짐: 2005년10월5일 23:00    주제: ASSIGN을 구현(?)하는데... 인용과 함께 답변

밑에서 김진현님이 말씀하신 것처럼

fun 돌렷2 : 메모리 * 환경 * 값 => 값 * 메모리

을 구현하고 있습니다.

근데 ASSIGN을 처리하는데 궁금한 것이 있어서 질문을 드립니다.

ASSIGN(id, exp)의 경우에 return되어야 하는 것이 uint * 메모리인데..

제 생각에는 id가 추가된 환경도 return되어야 하지 않을까라는 생각이 듭니다.

id가 추가된 환경을 return하지 않으면 한번 정한 값은 바꿀 수 없기 때문에[맞는 지 모르겠습니다만;] 새로운 환경으로 갱신되지 않을 것 같은데..

제가 잘못 알고 있는 걸까요?
위로
김덕환



가입: 2005년 8월 29일
올린 글: 190

올리기올려짐: 2005년10월5일 23:14    주제: Re: ASSIGN을 구현(?)하는데... 인용과 함께 답변

백주현 씀:

근데 ASSIGN을 처리하는데 궁금한 것이 있어서 질문을 드립니다.

ASSIGN(id, exp)의 경우에 return되어야 하는 것이 uint * 메모리인데..

제 생각에는 id가 추가된 환경도 return되어야 하지 않을까라는 생각이 듭니다.

ASSIGN에서는 변수가 환경에 추가되지 않습니다. K-에서 환경에 변수가 추가되는 경우는 LET 뿐입니다.

정의를 다시 한 번 살펴보시기 바랍니다.
_________________
TheyAreAsSmartAsYouAre
위로
사용자 정보 보기 비밀 메시지 보내기
황태현



가입: 2005년 9월 27일
올린 글: 10

올리기올려짐: 2005년10월5일 23:19    주제: Re: ASSIGN을 구현(?)하는데... 인용과 함께 답변

백주현 씀:

ASSIGN(id, exp)의 경우에 return되어야 하는 것이 uint * 메모리인데..
제 생각에는 id가 추가된 환경도 return되어야 하지 않을까라는 생각이 듭니다.
id가 추가된 환경을 return하지 않으면 한번 정한 값은 바꿀 수 없기 때문에[맞는 지 모르겠습니다만;] 새로운 환경으로 갱신되지 않을 것 같은데..



ASSIGN은 환경에 id를 추가하는 것이 아니라고 해석하면 될 것 같아요.
즉, 환경에 id를 추가하는 기능을 가진 것은 LET뿐이고
ASSIGN은 이미 환경에 id가 있을 때, 그 주소를 얻어 해당 주소가 가리키는 메모리의 값만을 바꾸는 것으로.

코드:

let
    x := 10
in
    ((x := 20); x)
end

의 결과는 20이고,
코드:

((x := 70); x)

의 결과는 x를 모릅니다.
가 되게 해석하면 될 것 같아요.

See:K- 의미 정의

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

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


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