1 하스켈 기초 1 환경갖추기

작성자
cablin
작성일
2019-05-08 23:25
조회
175
1 환경 갖추기
이 장에서는 하스켈로 코딩을 시작하기 위해 필요한 프로그램을 설치하는 방법을 설명한다.

하스켈 설치하기
하스켈은 프로그래밍 언어다. 즉 사람은 컴퓨터가 어떻게 행동해야 하는지를 이 언어를 통해 표현할 수 있다. 이는 요리법을 작성하는 것과 비슷하다. 여러분은 요리법을 작성하고 컴퓨터는 그것을 시행한다.

하스켈 프로그램을 사용하려면 하스켈 컴파일러라는 특별한 프로그램이 필요하다. 컴파일러는 하스켈로 작성된 코드를 받아 기계어로 변환한다. 기계어는 컴퓨터가 이해하는 보다 원시적인 언어다. 요리법 비유를 다시 들자면 여러분은 요리법(하스켈 프로그램)을 작성하고 요리사(컴파일러 프로그램)는 실제 재료들을 모아 먹을 수 있는 요리(실행가능한 파일)로 만들어낸다. 물론 완성된 요리로부터 요리법을 쉽게 얻어낼 수는 없다(그리고 하스켈 프로그램 코드를 컴파일하여 실행가능한 파일로 만들어낸 뒤에는 다시 얻어낼 수 없다).

하스켈 공부를 시작하려면 하스켈 플랫폼을 내려받고 설치해야 한다. 이 플랫폼에는 "Glasgow Haskell Compiler" 즉 GHC, 그리고 여러분에게 필요한 그 외 모든 것이 포함되어 있다.

하스켈을 그저 시험해보려는 것이거나 완전한 컴파일러를 내려받아 설치하기가 꺼려진다면 경량 하스켈 인터프리터인 Hugs를 시도해보라(이식도 가능하다). 온라인으로 운영되는 인터프리터인 TryHaskell을 가지고 놀아볼 수도 있겠다. 여기서 하는 모든 설명은 GHC를 대상으로 한다는 것을 명심하라.

잠깐
UNIX 유저에게:

여러분이 소스로부터 컴파일하는 것을 선호한다면 GHC에 대해서는 별로 좋은 생각이 아니다. 특히 여러분이 GHC를 처음 설치하는 거라면. GHC 자체가 대부분 하스켈로 작성되었기 때문에 소스로부터 GHC를 직접 부트스트랩하는 것은 아주 어렵다. 게다가 빌드 과정이 상당히 오래 걸리고 디스크 공간을 많이 소비한다. 그래도 정말로 GHC를 소스로부터 빌드하고 싶다면 GHC 홈페이지의 Building and Porting GHC를 보라.

요약하자면, 소스로부터 컴파일하는 대신 그냥 하스켈 플랫폼을 내려받는 것을 강력히 추천한다.

걸음마 떼기
하스켈 플랫폼을 설치했다면 첫 번째 하스켈 코드를 작성할 시간이다.

그러기 위해 GHCi라는 프로그램을 사용할 것이다('i'는 '반응형interactive'를 뜻한다). 여러분의 운영체제에 따라 다음 단계들을 따르라.

윈도우즈: Start - Run을 누르고 'cmd'를 입력한 후 엔터를 누른다. ghci를 입력하고 엔터를 한 번 더 누른다.
맥OS: "Applications/Utilities" 폴더의 "Terminal" 애플리케이션을 연다. 나타나는 창에 ghci를 입력하고 엔터 키를 누른다.
리눅스: 터미널을 열고 ghci 프로그램을 실행한다.
그러면 다음과 비슷한 것이 출력될 것이다.

GHCi, version 7.6.3: http://www.haskell.org/ghc/ 😕 for help
Loading package ghc-prim ... linking ... done.
Loading package integer-gmp ... linking ... done.
Loading package base ... linking ... done.
Prelude>
첫 줄은 GHCi의 버전이다. 그 다음 기본 패키지를 불러오고, 여러분은 GHC에 포함된 내장 함수와 모듈의 대부분에 접근할 수 있게 된다. 마지막으로 Prelude> 부분은 프롬프트라고 하는 것이다. 여기에 명령을 입력하면 GHCi는 그 결과에 응답할 것이다.

이제 첫 번째 하스켈 코드를 작성할 준비가 되었다. 간단한 산수를 시도해보자.

Prelude> 2 + 2
4
Prelude> 5 + 4 * 3
17
Prelude> 2 ^ 5
32
다른 언어의 연산자와 비슷하다. +는 더하기, *는 곱하기, ^는 지수(즉 a^b)다. 두 번째 예시에서 하스켈이 표준 연산 순서를 따른다는 것을 볼 수 있다.

이제 하스켈을 계산기로 쓰는 방법을 배웠다. 사실 하스켈은 기본적으로 계산기다. 숫자뿐 아니라 문자, 리스트, 함수, 트리, 심지어 다른 프로그램까지 처리하는 매우 강력한 계산기다(이 용어들이 익숙하지 않아도 걱정하지 마라).

GHCi는 아주 강력한 개발 환경이다. 진도를 나아감에 따라 소스 코드가 들어있는 파일을 GHCi로 불러오고 파일들의 각기 다른 부분을 평가(evaluate)하는 방법을 배울 것이다.

지금까지 한 것을 확실히 알겠다면(그렇지 않다면 talk page를 통해 이 위키책을 개선하는 데 도움이 되어주길 바란다!), 다음 장을 읽을 준비가 된 것이다. 다음 장에서는 함수를 포함해 하스켈의 몇 가지 기본 개념을 소개할 것이다.

마지막 편집일시 : 2014년 10월 1일 2:32 오후

이상 https://wikidocs.net/1453
전체 0

    전체 3
    번호 제목 작성자 작성일 추천 조회
    3
    1 하스켈 기초 2 변수와 함수
    cablin | 2019.05.17 | 추천 0 | 조회 161
    cablin 2019.05.17 0 161
    2
    1 하스켈 기초 1 환경갖추기
    cablin | 2019.05.08 | 추천 0 | 조회 175
    cablin 2019.05.08 0 175
    1
    하스켈 언어 알아보기
    cablin | 2019.05.08 | 추천 0 | 조회 226
    cablin 2019.05.08 0 226