2009-12-10 3 views
2

이게 뭐야, 내 Gambit-C 프로그램의 출력을 어떻게 캡처합니까?Gambit-C Scheme의 stdout은 무엇입니까?

$ gsi -e "(pp 'hello?)" 
hello? 

$ gsi -e "(pp 'hello?)" >asdf 
hello? 

$ gsi -e "(pp 'hello?)" 2>asdf 
hello? 

$ cat asdf 

프로그램의 출력을 asdf에 입력해야하지만 비어 있습니다. 표준 유닉스 프로그램처럼 stdout을 처리하도록 설정할 수있는 컴파일 타임 또는 런타임 옵션이 있습니까? 내가 pp에 익숙하지 않은 오전

답변

4

(바람직하게는 컴파일 타임),하지만 당신은 pretty-print를 원하는 것 :

$ gsi -e "(pretty-print 'hello?)" > test 
$ cat test 
hello? 
$ 
+1

네 말이 맞아. 나는'pp'가 많은 Gambit-C 예제에서 사용되는 것을 보았지만 REPL에 대해서는 특별한 의미를 가지고있는 반면,'pretty-print'는 예상대로 리다이렉트합니다. 나는'pp'가'예쁜 프린트 '의 동의어 일 뿐이라고 생각했다. 감사. – Steve

+0

예, pp는 완전히 다른 기능입니다 (혼동스럽게도 Chicken : S에서 _same_이지만) 매크로 확장과 같은 아주 깔끔한 기능을 제공합니다. 언젠가는 일부 매크로를 확인하십시오. 정말 유용하고 흥미 롭습니다. – Jyaan

관련 문제