|
|
이전 주제 보기 :: 다음 주제 보기 |
글쓴이 |
메시지 |
이기석
가입: 2005년 10월 3일 올린 글: 33
|
올려짐: 2005년10월31일 16:44 주제: HW5 의 1번에서 질문입니다. |
|
|
테스트를 위해 Sm5.run (trans(E)) 를 실행해야할텐데
어떻게 해볼 수 있습니까?
main.n 의 K.run (K.emptyMemory, K.emptyEnv, pgm) 부분을
Sm5.run (trans pgm) 으로 고쳐서 make 해봤는데 trans를 모른다는
에러가 나네요; |
|
위로 |
|
|
오학주
가입: 2005년 9월 5일 올린 글: 118
|
올려짐: 2005년10월31일 18:23 주제: Re: HW5 의 1번에서 질문입니다. |
|
|
이기석 씀: | 테스트를 위해 Sm5.run (trans(E)) 를 실행해야할텐데
어떻게 해볼 수 있습니까?
main.n 의 K.run (K.emptyMemory, K.emptyEnv, pgm) 부분을
Sm5.run (trans pgm) 으로 고쳐서 make 해봤는데 trans를 모른다는
에러가 나네요; |
trans 함수를 어디에 정의 하셨나요?
일단 다음과 같이 main.n을 수정하면 컴파일은 됩니다.
맨 위의 trans 함수를 작성하시면 되겠죠.
코드: |
fun trans p = Sm5.empty_command
fun main () =
let
val ptree = ref false
val src = ref ""
val _ =
Arg.parse
[("-ptree", Arg.Set ptree, "display parse tree")]
(fn x => src := x)
("Usage: " ^ (Filename.basename Sys.argv.[0]) ^ " [-ptree] [file]")
in
let
val lexbuf =
Lexing.from_channel (if !src = "" then stdin else open_in !src)
val pgm = Parser.program Lexer.token lexbuf
in
if !ptree then KParseTreePrinter.print pgm
else ignore (Sm5.run (trans pgm))
end
end
val _ = main ()
|
|
|
위로 |
|
|
|
|
새로운 주제를 올릴 수 없습니다 답글을 올릴 수 없습니다 주제를 수정할 수 없습니다 올린 글을 삭제할 수 없습니다 투표를 할 수 없습니다
|
Powered by phpBB 2.0.21-7 (Debian) © 2001, 2005 phpBB Group Translated by kss & drssay
|