2016-08-19 1 views
-1

내가이 페이지의 섹션 3의 예제를 공부하고 단계 코드는 아무 것도하지 않습니다. 나는 이것이 "모듈"이고 일부 모듈은 하스켈의 "프로그램"이라고 생각하지만, 왜이 모듈에 "main"이라는 함수가 있는지 이해하지 못한다. (나는 "main "프로그램이 되려고했지만 변경하려고 시도했지만 컴파일에 실패했습니다. 그것이 프로그램이 아니라면, 내가 스스로 앉아있는 모듈로 무엇을해야 하는가? ghci로 가져온 다음 main>을 입력해야합니까? 그렇다면 시도했지만 시도가 불가능합니다.모듈과 하스켈 프로그램 첫

+0

GHCi를 열고'import Control.Monad.State.Lazy'에서 붙여 넣을 수 있습니다. 그런 다음 대화 형 대화 상자 ('runState (return 'X') 1 ')를 시도해 볼 수 있습니다. 하나는 제외 :이 튜토리얼은 몇 가지 간단한 설명을 제공하므로 가끔씩'StateT'를 실행하면 놀라지 마라. [또한] (https://kuniganotas.wordpress.com/2012/09/08/haskell -importunimport-a-module-into-ghci /)는 가져 오기 및 가져 오기를 처리합니다. – Alec

+0

GHC 사용 설명서의 [Using GHCI section] (https://downloads.haskell.org/~ghc/master/users-guide/ghci.html)이 도움이 될 수 있습니다. – ErikR

+0

예제 코드, 파일 이름 및 명령이 실행 된 상태에서 질문하는 것을 고려하십시오. 귀하의 질문은 길고 번거롭기 때문에 객관적인 방식으로 대답하기가 어렵습니다. –

답변

1

"전체 및 구체적인 예"절의 코드는 완전하고 구체적인 예입니다. 이 코드를 모듈 이름과 같은 이름의 파일에 넣을 수 있습니다 (즉, StateGame 모듈은 StateGame.hs라는 파일에 있어야합니다).

그런 다음 ghc ghc StateGame.hs -main-is StateGame으로 컴파일 할 수 있습니다. 또는 해당 모듈의 이름을 Main으로 변경하면 -main-is 부분이 필요하지 않습니다.

+0

soooo 많은 감사합니다. – d446