게시판 인덱스

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

자가채점기 질문입니다.

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



가입: 2013년 9월 4일
올린 글: 26

올리기올려짐: 2013년9월18일 10:57    주제: 자가채점기 질문입니다. 인용과 함께 답변

이번 자가채점기는 첫 과제와 달리 몇몇 부분이 추가되었는데요,
이 추가된 코드가 어떤 역할을 하는 지를 알 지 못해 여쭙습니다.

common-grade에서 output 함수는 어떤 함수인가요?
특히 ([(lambda (exn) #t) (lambda (exn) (printf "X (error)\n"))])이 무슨 일을 하는 지가 이해되지 않습니다.

또한 다른 채점기 코드에서 begin 함수를 비롯해서 output을 call할 때
(output (lambda () (equal? (zipper '(1) '(2)) '(1 2))))와 같이 lambda가 쓰이는 것은 어떤 이유에서 인가요?

감사합니다. 좋은 추석 보내세요!
위로
사용자 정보 보기 비밀 메시지 보내기
강지훈



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

올리기올려짐: 2013년9월18일 14:59    주제: 인용과 함께 답변

먼저 자가채점기 코드를 이해할 수 있으만큼 진도를 나가지 않은 만큼,
코드를 이해하지 못하셔도 전혀 상관 없습니다.

그래도 간단히 답을 드리자면,

1) with-handler라는 함수로 예외를 처리합니다. 제시하신 ([(lambda (exn) #t) (lambda (exn) (printf "X (error)\n"))])는, 모든 예외에 대해, "X (error)"라고 출력하라는 의미입니다.

2) 예외가 날 수 있는 코드가 output이 예외처리 하는 도중에 실행할 수 있도록 한 것입니다.
_________________
강지훈
프로그래밍의 원리 조교

Jeehoon Kang
TA, Principles of Programming
위로
사용자 정보 보기 비밀 메시지 보내기
김성학



가입: 2013년 9월 4일
올린 글: 26

올리기올려짐: 2013년9월18일 19:41    주제: 인용과 함께 답변

답변 감사합니다!!
위로
사용자 정보 보기 비밀 메시지 보내기
이전 글 표시:   
글 쓰기   답변 달기     게시판 인덱스 -> 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