게시판 인덱스

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

내장지방 도려내기?

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



가입: 2005년 9월 20일
올린 글: 91
위치: SNUCSE OPT. lab.

올리기올려짐: 2005년11월22일 20:34    주제: 내장지방 도려내기? 인용과 함께 답변

내장지방, 타입 체크 구문을 잘 도려낼 방법이 있나요?

어차피 우리가 사용하는 nML 에서, `값(M의)' 이라는 타입이 있을 테고,

이 `값' 이 어떤 구조냐로 실제적인 값을 꺼내올 수 있을 겁니다.

이를테면 type value = Integer of int | Boolean of bool 과 같은 타입에서

value 타입의 v로부터 실제적인 int 값을 꺼내오려면 v 가 Integer(n) 임을 알아야 합니다.

이정도의 타입에 대한 구문은 2번에도 있어야 할 것 같습니다.

그런데 1에서의 타입 체크 구문도 이와 다를 바 없을 것 같은데,

과연 도려낼 지방은, 무엇인가요?

(숙제 하신 분들은 무얼 도려내신 건지 궁금하네요 ㅜ.ㅜ)
_________________
The kingdom of heaven has been forcefully advancing, and forceful men lay hold of it.
위로
사용자 정보 보기 비밀 메시지 보내기 글 올린이의 웹사이트 방문 MSN 메신저
서성현



가입: 2005년 9월 29일
올린 글: 54

올리기올려짐: 2005년11월22일 23:12    주제: Re: 내장지방 도려내기? 인용과 함께 답변

김진현 씀:
과연 도려낼 지방은, 무엇인가요?

저도 그게 의문입니다..
저 같은 경우는 RuntimeError가 발생하는 부분을 모두 삭제했습니다.
(단, "memory is full"과 "cannot read non-int type"(int_of_string) 같은 RuntimeError는 남겨두고요.)

예를 들면..
코드:
fun equal (Num v1   , Num v2   ) = Bool (v1=v2)
  | equal (String v1, String v2) = Bool (v1=v2)
  | equal (Bool v1  , Bool v2  ) = Bool (v1=v2)
  | equal (Loc v1   , Loc v2   ) = Bool (v1=v2)
  | equal (_, _) = raise RuntimeError "cannot compare non-(const | Loc) type"

이 부분을 이렇게 고쳤지요.
코드:
fun equal (Num v1   , Num v2   ) = Bool (v1=v2)
  | equal (String v1, String v2) = Bool (v1=v2)
  | equal (Bool v1  , Bool v2  ) = Bool (v1=v2)
  | equal (Loc v1   , Loc v2   ) = Bool (v1=v2)

하지만 제 생각에도, 그렇게 해서 실행 속도가 빨라질 것 같지는 않네요.. ^^;
_________________
http://snupl.wo.to
위로
사용자 정보 보기 비밀 메시지 보내기 글 올린이의 웹사이트 방문
이전 글 표시:   
이 게시판은 잠겼으므로 글을 올리거나, 답변을 하거나 수정을 할 수 없습니다   이 주제는 잠겼으므로 답변을 하거나 수정을 할 수 없습니다     게시판 인덱스 -> 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