0
에서 변수를 정의
나는 하스켈에서 불변 변수를 선언하기 위해 노력하고있어?하스켈
나는 하스켈에서 불변 변수를 선언하기 위해 노력하고있어?하스켈
let
은 최상위 수준 정의에서 사용되지 않습니다. 상단에 let
를 사용하려고 시도하는 사람들을 위해
a = [1,2]
main = print $ sum a
또는
main = do
let a = [1,2]
print $ sum a
또는
main = let a = [1,2] in print $ sum a
혼란의 일반적인 소스입니다 일부 프로그램을 수정하는 방법에는 여러 가지가 있습니다 레벨은 ghci
에있는 테스트 된 표현식을 실제 소스 파일로 변환하려고 할 때입니다.
let
은 모나드 내부에서 작업 할 때 사용할 수 있습니다. ghci와 main
은 IO
모나드에서 작동하므로 ghci에 let a = [1,2]
과 같은 것을 쓸 수 있습니다.
ghci 또는 main 내부에서 수행하지 않습니다. –
그것이 나에게 도움이되지 않는다면 왜 그렇게 말하고 있습니까? –
@MariusKavansky 소스 파일 내에서 최상위 레벨 정의를 위해 let을 사용하지 마십시오. –