FrontPage | FindPage | TitleIndex | RecentChanges | UserPreferences | Home|RSS
 
하스켈로 배우는 프로그래밍 (Programming in Haskell)

http://www.kyobobook.co.kr/product/detailViewKor.laf?barcode=9788972808183
[http]크게 [http]아주크게 확대
[ISBN-0521692695]
영문 원서
이곳은 [http]Graham Hutton[]이 지은 [http]Programming in Haskell[] 우리말 판 "하스켈로 배우는 프로그래밍" 홈페이지입니다. [http]부산대학교[] [http]프로그래밍 언어 연구실[] [http]우균[] 교수님 감수 아래 [http]안기영[](kyagrd at gmail dot com)과 박정훈(pjhun2 at gmail dot com)이 우리말로 옮긴 이 책은 [http]대림출판사[]에서 2009-07-24에 [http]출간[]하였습니다. [http]교보문고[], [http]YES24[], [http]인터파크[] 등에서 인터넷으로 통해 주문하실 수 있습니다.

책 내용에 대한 질문이나 의견은 "[http]make it functional 함수형 프로그래밍의 모든 것[]" 커뮤니티(http://functional.or.kr/)의 [http]Haskell 게시판[]에 올려 주세요.

영어(English)로 된 자료가 우리말보다 많이 있으므로 이 책을 읽고 난 후 [http]Haskell homepage[], [http]Hugs[], [http]GHC[], [http]Real World Haskell[], [http]Lambda the Ultimate[] 등을 둘러보시면 하스켈에 대해 더 다양하고 깊이 있는 최신 정보를 얻을 수 있습니다.

Contents

1 책 소개
2 지은이 소개
3 옮긴이 소개
4 지은이 머리말
5 [http]추천사[] (김재우)
6 옮긴이 머리말
6.1 인사말
7 책의 하스켈 코드
8 강의자료와 연습문제 모범답안
9 오탈자 목록
10 책 목차
11 많이 질문하는 것들
게시판 최근 글 http://functional.or.kr/taxonomy/term/3/0/feed

Real World Haskell 번역하시는 분이 있습니다
Type에 대한 기초질문
wxHaskell 예제 실행에서의 에러.
하스켈로 윈도우 프로그래밍 질문
Erik Meijer의 Functional Programming Fundamentals 온라인 강좌
GHC (글래스고우 하스켈 컴파일러) 6.12.1 버전 출시
한글문자열을 요소로 갖는 리스트에서...
하스켈로 배우는 프로그래밍 (Graham Hutton 지음, 안기영 박정훈 옮김, 대림출판사)
Type에 대해서...
YAHT에서 또다른 문제 (page35)



1 책 소개 #

하스켈은 함수형 프로그래밍을 배우고 학생들이 간결하고 깨끗한 코드 작성하며 프로그램을 구성하고 그 성질을 증명하는 방법을 익히기에 아주 좋은 언어다.

이 입문서는 처음 프로그래밍을 배우는 사람에게 가장 적합한 책이다. 프로그래밍 경험이 전혀 없는 사람도 이해할 수 있도록 모든 개념을 기초부터 차근차근 엄선된 예제를 곁들여 설명한다. 각 장에는 아주 간단한 문제부터 책에서 다루는 프로젝트를 확장하는 데 이르기까지 다양한 난이도의 연습문제를 제공할 뿐 아니라, 고급 주제에 대한 더 읽을거리도 추천하고 있다. 저자는 여러 해 동안 강의한 경험을 바탕으로 분명하고 간결하게 내용을 표현하고 있다.

이 책의 특징은 다음과 같다.
  • 강사와 학생들을 위해 파워포인트 슬라이드를 책 홈페이지에서 제공한다.
  • 강사들은 연습문제 모범답안과 시험문제를 (모범답안과 함께) 요청할 수 있다.
  • 책에서 다루는 모든 코드는 최근 하스켈 구현에서 잘 동작하며 모두 책 홈페이지에서 내려받을 수 있다.
  • 강의 능력이 검증된 저명한 하스켈 연구자이자 강사인 허튼 교수가 직접 집필하였다.
  • 강의 교재로는 물론이고 혼자 공부하기에도 적당하다.
옥스포드 대학의 Richard Bird 교수는 이 책을 다음과 같이 극찬하고 있다.
"이 책은 초심자를 위한 입문서로 하스켈로 함수형 프로그래밍에 대해 아주 잘 소개하는 책입니다. 일류 강사이자 연구자가 저술한 책 답게 책의 내용이 독자들의 시선을 확 잡아끌면서도 군더더가 없이 가벼운 구성으로 대학 1학년 신입생에게도 무리 없을 만큼 대학생들의 수준에 눈높이를 잘 맞추었습니다. 이 책을 전적으로 추천합니다."

2 지은이 소개 #

  • Graham Hutton <gmh at cs.nott.ac.uk> http://www.cs.nott.ac.uk/~gmh
    그라함 허튼 교수는 함수형 프로그래밍에 대한 선도적인 연구와 교육을 하는 네 곳의 연구중심대학에서 일하였다. 그는 15년 이상 함수형 프로그래밍을 연구하며 30여 편의 연구 논문을 냈으며 하스켈 워크샵(지금 하스켈 심포지움) 학회장과 함수형 프로그래밍 저널(Journal of Functional Programming)의 하스켈 특별 이슈에 대한 편집장을 역임하기도 하였다. 또한 10년 이상 하스켈로 강의하며 대학 교과과정에서 함수형 프로그래밍을 소개하는 데 노력하고 있다.

3 옮긴이 소개 #

  • 안기영 <kyagrd at gmail dot com> http://kyagrd.dyndns.org
    2002년 [http]KAIST [http]전산학과를 졸업하고 [http](주)그래텍에서 3년여 간 팝폴더 및 파일뱅크(2005년 일본) 등을 비롯한 분산 네트웍 스토리지 시스템의 서버 프로그램 개발과 관리 업무를 맡았다. 2005년부터는 [http]포틀랜드 주립대학 [http]컴퓨터 과학과에서 프로그래밍 언어의 타입 시스템을 논리 증명 시스템을 하나로 묶기 위한 [http]Tim Sheard 교수의 [http]Omega 프로그래밍 언어 연구팀에서 박사과정을 밟고 있다. 박사과정 재학 중 2008년 한국인으로는 최초로 [http]ACM [http]SIGPLAN [http]하스켈 심포지움(예전 하스켈 워크샵)에서 [http]논문을 발표했으며, [http]크레딧 스위스(Credit Suisse) 2008 QSI 여름 인턴으로, 2009년 여름 현재 [http]NASA Ames 연구소에서 인턴 연구원으로 Haskell과 F#등의 함수형 프로그래밍 기술을 금융파생상품 및 항공우주소프트웨어 분석에 적용하는 프로젝트에 참여하였다.

  • 박정훈 <pjhun2 at gmail dot com>
    대학 휴학 중 인천광역시 정보화 사업 및 대전광역시 전자 회의록 구축 사업에 참여 하였으며(2000-2001), 국회의원 웹사이트 구축 및 전산화 업무(2003), ATCIS 육군전술지휘정보체계 서버 및 데이터베이스 유지보수(2004-2006) 등을 비롯한 다양한 공공 프로젝트에 참여하였으며, 2008년 동아대학교에서 컴퓨터 공학과를 졸업하였다. 그 동안 경험을 바탕으로 Sun Microsystems Solaris Network Administrator, Microsoft SQL SERVER 공인 엔지니어로 미국에서 일하고 있으며, 주요 관심 분야는 함수형 프로그래밍 패러다임을 실제 업무에 적용하는 것이며 현재 VSTS 2010에 들어갈 차기 F#에 대해 연구 중이다.

  • 우균 (감수) <woogyun at pusan dot ac dot kr> http://pl.pusan.ac.kr/~woogyun/
    우균 교수는 [http]KAIST [http]전산학과 학사(1991), 석사(1993), 박사(2000)를 취득하고, 2000년부터 2004년까지 [http]동아대학교 [http]컴퓨터공학과 조교수로, 2004년부터는 [http]부산대학교 [http]정보컴퓨터공학부 부교수로 학생들을 가르치고 있다. 박사학위 연구 주제는 함수형 언어(functional languages)였으며, 현재는 프로그래밍 언어 및 컴파일러 구현, 소프트웨어 공학, 프로그램 분석 및 시각화, 로봇 프로그래밍 등을 연구하는 [http]프로그래밍 언어 연구실을 이끌고 있다.

4 지은이 머리말 #

지은이 머리말 보기

5 [http]추천사[] (김재우) #


[http]"컴퓨터 프로그램의 구조와 해석"[]([http]Structure and Interpretation of Computer Programs[] 우리말 판)을 옮기신 한국마이크로소프트 김재우 부장님의 추천사 원본은 아래 블로그 링크에서 읽으실 수 있습니다.

http://kizoo.blogspot.com/2009/05/programming-in-haskell.html

6 옮긴이 머리말 #

[http]IT 실무자로서 하스켈에 관심을 가져야 할 이유?[]

6.1 인사말 #

좋은 인연이 있었기에 이 책을 출간할 수 있었습니다. 뒤돌아 보면 십 년 전 한글 유즈넷에서 당시 대학원생이셨던 김재우님으로부터 C++ 표준라이브러리의 포괄적 프로그래밍 패러다임이 하스켈과 같은 함수형 언어에서 비롯되었다는 이야기를 주워들은 것이 아마도 프로그래밍 언어에 관심있는 분들과 인연을 맺게 된 계기였습니다. 재작년 포틀랜드에서 ICFP라는 학회와 함께 열리는 하스켈 관련 행사 등을 문의하는 이메일을 통해 박정훈 형을 만나게 된 것이 이렇게 책을 옮기는 계기가 되리라고는 생각지도 못했습니다. 또한 책을 옮기며 Graham Hutton 교수님, 우균 교수님, 그리고 초고를 검토해 주신 분들과 새로운 인연도 생겼습니다.

미국으로 일터를 옮기느라 바쁜 중에도 출판사와 연락 등 한국에서 저 대신 궂은 일을 도맡아 해 주신 정훈이 형, 지금 공부할 수 있는 기초를 가르쳐 주신 이광근, 최광무, 한태숙, 박종철, 박우석 교수님을 비롯한 대학교 스승님들, 그리고 이곳에서 프로그래밍 언어를 같이 연구하는 Tim Sheard 교수님 및 여러 교수님들과 동료 대학원생들, 또한 멀리서도 항상 사랑으로 기도해 주시는 부모님과 가족들에게 고마움를 표하고 싶습니다. 이 책이 누군가에게 도움이 되고 새로운 인연을 열어 간다면 모든 사람의 마음과 마음 사이에 섭리하시는 하나님께 영광을 돌립니다.

2008년 11월 30일, 비오는 겨울의 오레곤 포틀랜드에서. 안기영

국내에 처음으로 하스켈 입문서를 번역 할 수 있어서 몹시 흥분 되고 기쁩니다. 너무나도 부족한 저에게 함께 번역을 하자고 제의를 해주신 안기영 님께 정말 송구스럽고 고맙다는 말부터 전합니다. 안기영 님이 주도하여 시작한 일에 작은 보탬 밖에 드리지 못한 것 같아 마음 한 구석이 무겁습니다. 번역이 결코 쉽지 않은 일이었지만 안기영님과 스승님의 도움으로 끝까지 할 수 있었습니다. 이번 번역을 계기로 무엇이 부족한지 어떤 부분을 더 공부를 해야 할지 깨닫게 한 좋은 시간이었습니다. 누군가는 이 책으로 인해 함수형 언어의 재미를 발견하여 즐거움으로 개발하게 된다면 저에게 있어서 가장 큰 영광 일 것입니다.

2008년은 많은 고난과 시련 속에서 스스로에게 길을 묻는 한 해였습니다. 어두운 긴 터널 속에 갇힌 것 마냥 답답함이 괴롭혔습니다. 그 고통 속에서 저를 너무나도 아껴준 우리 가족, 10년이 넘게 서로를 지켜준 우리 지존나갈 친구들(대원, 상헌, 남규, 민영, 영욱, 승하, 경민, 원준), 그리고 Irvine 친구들(용재, 한성, 문순, 창하, Nathan&Mie), Daizo’s family(Noriko, Aki), 분당에서 고군분투중인 김재윤 님, 뉴욕에서 너무나 큰 도움을 주신 반영록 선배님, 항상 격려와 질책으로 저를 잡아준 MVP 정홍주 형, 길지 않은 시간이었지만 저에게 늘 따뜻한 마음을 보여주신 강기하 님, 항상 저의 롤 모델이 되어 주신 스승님께도 가슴 깊이 고개 숙여 고마움을 전합니다. 마지막으로 저의 영원한 버팀 목이자 정신적인 지주이신 아버지의 건강이 하루 속히 되찾으시길 기원합니다.

2008년 11월 30일, 비 내리는 뉴욕 밤하늘을 바라보며. 박정훈


7 책의 하스켈 코드 #

다음은 각 장의 큰 보기에 대한 하스켈 코드다.
  • [http]카이사르 암호 - 5.5 절
  • [http]글줄 전송기 - 7.6 절
  • [http]함수형 문법분석기 라이브러리 - 8 장
  • [http]산술식 문법분석기 - 8.8 절
  • 계산기 - 9.6 절
    계산기 보기는 터미널 특성을 많이 타기 때문에 플랫폼에 따라 다르게 구현하였다.
    • 유닉스/리눅스 - [http]calculator.lhs
    • 윈도우즈 환경 - [http]calculatorWin32.lhs, [http]Win32ANSI.hs
      윈도우즈 환경에서는 Win32ANSI.hs를 컴파일러로 미리 컴파일하여 목적 코드 Win32ANSI.o를 만든 다음 계산기를 ghci로 돌려야 제대로 돌아간다.
      C:\> ghc -c Win32ANSI.hs
      C:\> ghci calculatorWin32.lhs        
    참고로 계산기 보기는 함수형 문법분석기 라이브러리에 코드에 의존하며, OS 환경에 관계없이 Hugs에서는 제대로 돌아가지 않으므로 GHC로 돌려야만 한다.
  • 생명 게임 - 9.7 절
    생명 게임 보기도 터미널 특성을 많이 타기 때문에 플랫폼에 따라 다르게 구현하였다.
    • 유닉스/리눅스 - [http]life.lhs
    • 윈도우즈 환경 - [http]lifeWin32.lhs, [http]Win32ANSI.hs (계산기에서 사용했던 것과 같은 파일)
      윈도우즈 환경에서는 Win32ANSI.hs를 컴파일러로 미리 컴파일하여 목적 코드 Win32ANSI.o를 만든 다음 생명게임를 ghci로 돌려야 제대로 돌아간다.
      C:\> ghc -c Win32ANSI.hs
      C:\> ghci lifeWin32.lhs        
      OS 환경에 관계없이 Hugs에서는 제대로 돌아가지 않으므로 GHC로 돌려야만 한다.
  • [http]늘 참 검사기 - 10.4 절
  • [http]추상 기계 - 10.5 절
  • [http]카운트다운 문제 - 11 장
    카운트트다운 문제 코드는 Hugs 성능의 한계 때문에 GHC에서 돌려야만 의미 있는 결과를 얻는다.
  • [http]번역기 - 13.7 절

8 강의자료와 연습문제 모범답안 #

저자인 Graham Hutton 교수님의 강의 슬라이드 및 연습문제 모범답안은 [http]영문판 원서 홈페이지[]에 있습니다.

또한 앞으로 국내 대학 등 교육기관에서 이 책을 교재로 진행하는 강의 슬라이드가 있다면 여기에 링크를 추가하도록 하겠습니다.

9 오탈자 목록 #

오탈자 보기

10 책 목차 #

목차 보기


11 많이 질문하는 것들 #

만질것 보기
last modified 2009-08-21 15:32:11
EditTextFindPageDeletePageLikePages