게시판 인덱스

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

6-2 질문

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



가입: 2017년 9월 5일
올린 글: 24

올리기올려짐: 2017년11월22일 15:03    주제: 6-2 질문 인용과 함께 답변

cps 변환에서 전달하는 k는 함수로 이해하는게 맞나요?
즉, (cps' e) (fun x=> ~) 이런식으로 입력을 받는다는 의미인가요?

뼈대코드에서 조교님께서 미리 짜주신 Add부분에
App(Var k, Add (Var v1, Var v2)) 이렇게 되어 있는데
m0.ml에서 apply는 App(e1, e2)에서 e1은 함수만을 받는 것 같은데
Var k가 들어가도 되는건가요?
애초에 cps'함수 초반에 let k = new_name () in으로 string형태로
받는 것부터 잘 이해가 안됩니다 ㅜ

감사합니다^^
위로
사용자 정보 보기 비밀 메시지 보내기
김현식



가입: 2017년 9월 5일
올린 글: 24

올리기올려짐: 2017년11월22일 15:16    주제: 추가 질문 인용과 함께 답변

그리고 교수님께서 수업시간에 앞으로 할일들을 실처럼 쭉 꿰서 전달하는 방식이라고 하셨는데, 앞으로 할일'들'은 cmd list같은 형태를 띄나요?

즉, 저희는 간단하게 cps'(Add(e1,e2)) 이런것만 다뤘지만 사실 그 오른쪽에 오는 해야할 일은 하나가 아니라 여러개일텐데 (((cps'(e) k1) k2) k3) ..의 형태인가요?

그리고

cps(e1 + e2) = \k. (cps e1) (\v1. (cps e2) (\v2. k (v1 + v2) ) )

에서 cps e1을 하면 \k. ... 형태로 쭉 다시 이어질텐데 일반적으로 e로 상수를 만나기 전까지 cps(e) = /k. /k. .../k.k (~) 이런 형태를 보일텐데 각 단계마다 k가 다르게 입력받는건가요? 위의 질문이랑 연계시키면 cps'(e) k1 k2 k3 .. 이런식으로 입력받아야 되는건가요?

답변 부탁드리겠습니다^^[/quote]
위로
사용자 정보 보기 비밀 메시지 보내기
2016-19711



가입: 2017년 9월 12일
올린 글: 8

올리기올려짐: 2017년11월24일 21:56    주제: 제가 이해하기로는.. 인용과 함께 답변

제가 이해한 것을 맞는지는 모르지만 제가 이해한대로 간단히 설명을 드리자면..
k는 list가 아니라 함수이고
App의 첫번째 인자는 함수만을 받는게 아니라 mexp를 받아서 그 value가 함수가 아니면 TypeError를 띄우는 것 입니다
또한 각 단계마다 k가 달라야 하는 것이 맞기 떄문에 처음에 k = new_name ()으로 받는 것입니다
위로
사용자 정보 보기 비밀 메시지 보내기
김현식



가입: 2017년 9월 5일
올린 글: 24

올리기올려짐: 2017년11월24일 22:13    주제: 답변 감사합니다 인용과 함께 답변

스스로 생각하다가 깨달았습니다^^

답변 감사합니다~
위로
사용자 정보 보기 비밀 메시지 보내기
이전 글 표시:   
글 쓰기   답변 달기     게시판 인덱스 -> 4190.310 Programming Languages (Fall 2017) 시간대: GMT + 9 시간(한국)
페이지 11

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


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