게시판 인덱스

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

[HW4-1] 타입 질문입니다

 
글 쓰기   답변 달기     게시판 인덱스 -> 4190.210 Principles of Programming (Fall 2013)
이전 주제 보기 :: 다음 주제 보기  
글쓴이 메시지
유경인



가입: 2013년 9월 9일
올린 글: 29

올리기올려짐: 2013년10월13일 15:28    주제: [HW4-1] 타입 질문입니다 인용과 함께 답변

주어진 뼈대코드에서 보면
각자 구현한 "어떤 data structure"를 "tree"라고 부르고 있습니다

구현하다보니 또 다른 data structure를 만들었는데요

modified-t -> (str X (int list))
| ((int list) X (modified-t ....

이런건데 이걸 주석 한줄로 적을순 없을것 같습니다

그렇다고 그냥 modified-t라고 적을수도없고.. 어떻게해야할까요?
위로
사용자 정보 보기 비밀 메시지 보내기
김동욱



가입: 2013년 9월 14일
올린 글: 23

올리기올려짐: 2013년10월13일 16:04    주제: 뼈대코드 보면 타입을 다 적어주셨던데 인용과 함께 답변

저도 질문이있습니다.

뼈대코드 보면 뼈대 함수들 타입을 다 적어주셨던데 인자에 대한 타입은 없더라구요
인자 타입은 안적어도 되는건가요 Embarassed


그리고 HW4-1에서 재귀 프로시저를 예전에 2친수 같은 타입으로 짜게됬는데..

이런경우에 타입표기는 어떤식으로 해야하나요?

재귀가 진행되는 동안에 재귀적 표현없이 표현 할 수없는 타입이 인자로 들어오게됩니다...

예를 들어서 함수의 인자가 int X string 또는 (int X ((int X string) X (int X string))) ..

ex)
'(("a" . 5) ("b" . 1) ("c" . 1) ("d" . 1))
'(("a" . 5) ((("b" . 1) "c" . 1) . 2) ("d" . 1))
'(("a" . 5) ((((("b" . 1) "c" . 1) . 2) "d" . 1) . 3))

이런식으로 가변적인 타입이 됩니다.

임의로 tree 이런식으로 적어주어도 될까요?

따로 tree 라는 데이터 타입에 대한 이름을 암시하는 데이터 처리 함수는 구현하지 않고 있습니다.
위로
사용자 정보 보기 비밀 메시지 보내기
강지훈



가입: 2008년 9월 2일
올린 글: 291
위치: 302동 312-2호

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

1.
인용:
뼈대코드 보면 뼈대 함수들 타입을 다 적어주셨던데 인자에 대한 타입은 없더라구요
인자 타입은 안적어도 되는건가요


무슨 말씀이신지 모르겠습니다만,

코드:
(define (leaf str val tree) ; leaf: string * int * tree -> tree
  (raise "TODO"))


에서 "leaf: string * int * tree -> tree" 라는 타입만 써도 옳은 것으로 간주하겠습니다.


2.
재귀적 타입을 정의하시고, 그 타입 이름을 타입에서 사용하시면 됩니다.
예를 들어,

코드:
modified-t -> (str X (int list))
| ((int list) X (modified-t ....

라고 주석으로 적어주신 뒤,

코드:
(define (example t) ; example: modified-t -> modified-t
   ...)

라고 적어주세요.
_________________
강지훈
프로그래밍의 원리 조교

Jeehoon Kang
TA, Principles of Programming
위로
사용자 정보 보기 비밀 메시지 보내기
이전 글 표시:   
글 쓰기   답변 달기     게시판 인덱스 -> 4190.210 Principles of Programming (Fall 2013) 시간대: GMT + 9 시간(한국)
페이지 11

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


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