게시판 인덱스

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

과제2-1 unbound constructor

 
글 쓰기   답변 달기     게시판 인덱스 -> 4190.310 Programming Languages (Fall 2012)
이전 주제 보기 :: 다음 주제 보기  
글쓴이 메시지
이상아



가입: 2012년 9월 6일
올린 글: 10

올리기올려짐: 2012년9월24일 2:19    주제: 과제2-1 unbound constructor 인용과 함께 답변

안녕하세요~

mathemadiga에서 match - with을 쓰려는데요,

인자 exp를 매칭시키는 과정에서 계속 unbound constructor 문제가 생깁니다.

match exp with
| ADD(exp1, exp2) -> ...

이런식으로 쓰면 ADD가 unbound constructor라고 그러면서 컴파일이 안되네요 ㅠㅠ

INT, REAL, ADD... 같은 게 혹시 원래 있는(?) 함수라서 그런가요?

unbound constructor를 해결하는 방법은 어떤건지 가르쳐 주시면 감사하겠습니다.
위로
사용자 정보 보기 비밀 메시지 보내기
이승중



가입: 2010년 6월 22일
올린 글: 561

올리기올려짐: 2012년9월24일 9:02    주제: 인용과 함께 답변

안녕하세요

exp 타입의 인자에 대해서 match ... with를 쓰시려면

exp 타입의 정의가 먼저 있어야 합니다.

숙제에 명시되어있는 exp 타입 정의
코드:
 type exp = X
| INT of int
| REAL of float
| ADD of exp * exp
| SUB of exp * exp
| MUL of exp * exp
| DIV of exp * exp
| SIGMA of exp * exp * exp
| INTEGRAL of exp * exp * exp

를 mathemadiga 함수 전에 붙여 넣어주세요

저 타입 정의의 의미는 exp 타입을 만들때 쓸 수 있는 constructor들을 나열한건데요

INT of int라 하면 int 인자 하나를 받는 INT constructor로 exp 타입을 만들 수 있다는 뜻입니다.

(INT 3) 하면 exp 타입의 값이 만들어진 거겠죠.. 이렇게 만들 수 있는 모든 exp 값을 match ... with로 경우를 따져서 작성하시면 됩니다.
위로
사용자 정보 보기 비밀 메시지 보내기
이전 글 표시:   
글 쓰기   답변 달기     게시판 인덱스 -> 4190.310 Programming Languages (Fall 2012) 시간대: GMT + 9 시간(한국)
페이지 11

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


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