Haskell:
명령줄 인수 읽기

How to: (방법)

Haskell에서 명령줄 인수를 읽는 것은 System.Environment 모듈을 사용합니다. 간단한 예제를 보겠습니다.

import System.Environment (getArgs)

main :: IO ()
main = do
  args <- getArgs
  putStrLn ("Hello, " ++ head args ++ "!")

실행 결과는 다음과 같습니다.

$ runghc greetings.hs Sarah
Hello, Sarah!

이 예에서, getArgs 함수는 모든 명령줄 인수를 문자열의 리스트로 반환합니다. head 함수로 첫 번째 인수를 가져옵니다.

Deep Dive (심화 학습)

  • 역사적 맥락: Haskell의 System.Environment 모듈은 프로그램에 전달된 인수를 다룰 수 있는 기능을 부여합니다. 표준 모듈이기 때문에 설치 없이 사용 가능합니다.
  • 대안들: 인수 파싱 라이브러리들, 예를 들면 optparse-applicative, cmdargs, getopt 같은 것들이 더 복잡한 인수와 옵션을 처리할 때 도움을 줍니다.
  • 구현 세부 사항: getArgsIO [String]을 반환하므로, IO Monad 내부에서 사용해야 합니다. 패턴 매칭이나 리스트 함수를 사용해 인수를 조작합니다.

See Also (관련 자료)

명령줄 인수와 관련된 정보나 라이브러리는 Haskell 패키지 문서에서 더 찾아볼 수 있습니다. “Learn You a Haskell"은 Haskell 배우기에 유용한 자원입니다.