게시판 인덱스

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

8-4의 rotate에서 box를 받는 이유가 아직도 이해가 되지 않네요..

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



가입: 2011년 9월 27일
올린 글: 35

올리기올려짐: 2011년12월9일 23:05    주제: 8-4의 rotate에서 box를 받는 이유가 아직도 이해가 되지 않네요.. 인용과 함께 답변

제가 이해한 것이 맞다면
rotate는 그 모듈의 box를 rotate한 것을 반환하는 것이어야 할텐데
왜 뜬금없이 box를 받을까요?ㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠ

예를 들어 기본 프레임을 T W D라고 할 때,

Rotate( Glue (T) (T) (W) (D) ).rotate ( Glue (T) (T) (W) (D) ).box

는 무엇이 나와야 하는 것일까요?
위로
사용자 정보 보기 비밀 메시지 보내기
김태훈10



가입: 2011년 10월 15일
올린 글: 21

올리기올려짐: 2011년12월10일 0:58    주제: 인용과 함께 답변

제가이해한건요.. 실질적으로 시계방향으로 90도회전한 박스를 나타내는 모듈을 만드는역할은 functor Rotate이고, 이 functor내에서 써먹기위해 rotate라는 함수가 있는거같습니다
functor Rotate에서만 써먹고 나머지functor에선 쓰이지않는...
예를들면..
코드:
module A = BasicFrame(struct let design = TURTLE end)
module Ap = Rotate(A)

이러면 A는 거북이가그려진 타일(NW)을 나타내는 모듈
Ap는 그걸 시계방향으로 90도 돌려버린타일(NE)을 나타내는 모듈

rotate함수의정의는 functor BasicFrame이나 functor Glue 내에서정의되고
단지 functor Rotate 내에서는 인자로들어온 모듈의 box함수와 rotate함수를 동시에 써서 새로운 박스를 만들기만하면 되는것같네요ㅜ
위로
사용자 정보 보기 비밀 메시지 보내기
현.철



가입: 2011년 9월 27일
올린 글: 35

올리기올려짐: 2011년12월10일 8:48    주제: 인용과 함께 답변

네 근데 문제는 functor의 인자로 들어온 모듈이 Glue인 경우 이 것을 돌린 것을 나타내는 모듈이란 것을 만들 수가 없다는 점입니다.

T T W D 인 모듈을 Rotate한다면 그 모듈의 rotate의 인자로 들어오는 녀석들은
D T T W여야 하는데, Rotate에서 어떻게 하면 D T T W인 모듈을 만들 수 있을까요?

물론 타입 검사를 강하게 하지 않으면 어느 정도 돌아가기는 합니다만 그 것이 맞는 구현은 아닌 것 같아 이렇게 질문을 올립니다.
위로
사용자 정보 보기 비밀 메시지 보내기
이태영



가입: 2011년 9월 19일
올린 글: 34

올리기올려짐: 2011년12월10일 11:39    주제: 인용과 함께 답변

일단 첫 글에서
코드:

Rotate( Glue (T) (T) (W) (D) ).rotate ( Glue (T) (T) (W) (D) ).box

는 D T T W 모양의 box를 반환해야 할 것 같습니다. Rotate functor의 rotate 함수는 box를 받아서 rotate된 box를 리턴하니까요

그런데 T T W D인 모듈을 Rotate하면 (Rotate( Glue (T) (T) (W) (D) ) 말씀하시는거죠?) 왜 그 모듈의 rotate 인자로 들어오는 녀석들이 D T T W인지 잘 모르겠네요..;
들어주신 예에서 functor Rotate는 T T W D로 묶인 녀석을 가져와서 내부에 정의된 rotate함수로 돌린 D T T W를 box로 가지고 있어야 하는거 아닐까요? : Rolling Eyes
위로
사용자 정보 보기 비밀 메시지 보내기 이메일 보내기
현.철



가입: 2011년 9월 27일
올린 글: 35

올리기올려짐: 2011년12월10일 11:50    주제: 인용과 함께 답변

FRAME의 rotate는 자기 FRAME에 해당하는 box를 받아서 rotate한 결과를 반환하는 함수라고 알고 있었는데 제가 잘못 이해한 것일까요?
위로
사용자 정보 보기 비밀 메시지 보내기
김태훈10



가입: 2011년 10월 15일
올린 글: 21

올리기올려짐: 2011년12월10일 13:13    주제: 인용과 함께 답변

음 T T W D인 모듈을 Rotate하고싶으면 인자로 T T W D가 들어가지않을까요
그리고 functor Rotate로 이 Glue 모듈이 들어가더라도 BasicFrame모듈이 들어갈때처럼 알맞게 구현하시면 되는것같습니다..
위로
사용자 정보 보기 비밀 메시지 보내기
이태영



가입: 2011년 9월 19일
올린 글: 34

올리기올려짐: 2011년12월10일 13:18    주제: 인용과 함께 답변

제가 이해하기로는 FRAME의 rotate는 '자기 box를 받아서 rotate한 결과를 리턴'이 아니라 '그냥 box를 받아서 rotate한 결과를 리턴'인 것 같아요. 단지 BasicFrame이냐 Glue냐의 차이만 있을 뿐인 것 같네요~
위로
사용자 정보 보기 비밀 메시지 보내기 이메일 보내기
이전 글 표시:   
이 게시판은 잠겼으므로 글을 올리거나, 답변을 하거나 수정을 할 수 없습니다   이 주제는 잠겼으므로 답변을 하거나 수정을 할 수 없습니다     게시판 인덱스 -> 4190.210 Principles of Programming (Fall 2011) 시간대: GMT + 9 시간(한국)
페이지 11

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


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