'scheme file.scm'과 같은 형식을 입력하고 파일을 해석 한 다음 REPL에로드하는 대신 쉘로 다시 가져 오려고합니다.MIT-Scheme에서 .scm 스크립트 (REPL 외부)를 어떻게 실행합니까?
편집 : 스키마 < test.scm을 시도했지만 여전히 REPL을 사용합니다. 유일한 차이점은 스트림이 끝날 때 스키마가 종료된다는 것입니다.
'scheme file.scm'과 같은 형식을 입력하고 파일을 해석 한 다음 REPL에로드하는 대신 쉘로 다시 가져 오려고합니다.MIT-Scheme에서 .scm 스크립트 (REPL 외부)를 어떻게 실행합니까?
편집 : 스키마 < test.scm을 시도했지만 여전히 REPL을 사용합니다. 유일한 차이점은 스트림이 끝날 때 스키마가 종료된다는 것입니다.
scheme <file.scm
이 작동해야합니다 (사용자가 --interactive
을 지정하지 않고 stdin이 터미널이 아닌 경우 체계는 비 대화식으로 작동 함).
내가 원하는 것은 SCM이라고 생각합니다. 이 같은 .scm 스크립트를 실행할 수 있습니다
$ scm -f foo.scm arg1 arg2 arg3
은 자세한 내용은 http://people.csail.mit.edu/jaffer/scm_3.html#SEC28를 참조하십시오.
는 SCM 홈페이지 : http://people.csail.mit.edu/jaffer/SCM이상한 일이지만 -f 없이는 작동하지 않습니다. 이것들을주의하십시오. – fyodorananiev
는 MIT 방식을 사용하는 기법 프로그램을 실행하려면 :
scheme --quiet < program.scm
--quiet
옵션은 (당신 즉, 원 프로그램의 출력이 표시되는 유일한 것입니다 보장 귀하의 요구 사항에 따라 REPL을 보지 마십시오.) 참조
: scheme --help
--batch 모드, --quiet, --silent
는 버전 및 저작권 및 고별의 시작 보고서를 표시하지 않습니다.
이 명령 줄 옵션은 실수로 list of command line options in the documentation에서 생략 된 것으로 보입니다. 이것은 scheme --help
이 보여 주므로 --batch-mode
이 참조 설명서의 다른 부분 (예 : here)에 사용 되었기 때문에 이것이 합법적 인 명령 줄 옵션이라고 생각합니다.
이 chez --help
을 확인하고 난이 (이 전 체즈 방식 사용하고 있다고 가정 해 봅시다) 발견 :
chez --verbose --script ./temp.scm
이것은을 충족하지 않습니다 또한
을
--verbose
매우 유용합니다 OP가 편집 한 "REPL을 사용하지 않음"요구 사항. [이 답변] (https://stackoverflow.com/a/47724861/5916915)을 참조하십시오. – Flux