HOME > 상세정보

상세정보

(가장 쉬운) 하스켈 책 : 느긋하지만, 우아하고 세련된 함수형 언어 (16회 대출)

자료유형
단행본
개인저자
Lipovaca, Miran 황반석, 역
서명 / 저자사항
(가장 쉬운) 하스켈 책 : 느긋하지만, 우아하고 세련된 함수형 언어 / 미란 리포바카 지음 ; 황반석 옮김
발행사항
서울 :   BJ Public,   2014  
형태사항
xxi, 338 p. : 삽화 ; 25 cm
총서사항
가장 쉬운 책 시리즈 ;001
원표제
Learn you a Haskell for great good! : a beginner's guide
ISBN
9788994774619
일반주기
색인수록  
일반주제명
Haskell (Computer program language)
000 00964camcc2200301 c 4500
001 000045793294
005 20140321164559
007 ta
008 140321s2014 ulka 001c kor
020 ▼a 9788994774619 ▼g 93000
035 ▼a (KERIS)BIB000013415999
040 ▼a 244026 ▼c 244026 ▼d 244026 ▼d 211009
041 1 ▼a kor ▼h eng
082 0 4 ▼a 005.13/3 ▼2 23
085 ▼a 005.133 ▼2 DDCK
090 ▼a 005.133 ▼b H349 2014
100 1 ▼a Lipovaca, Miran
245 2 0 ▼a (가장 쉬운) 하스켈 책 : ▼b 느긋하지만, 우아하고 세련된 함수형 언어 / ▼d 미란 리포바카 지음 ; ▼e 황반석 옮김
246 1 9 ▼a Learn you a Haskell for great good! : ▼b a beginner's guide
260 ▼a 서울 : ▼b BJ Public, ▼c 2014
300 ▼a xxi, 338 p. : ▼b 삽화 ; ▼c 25 cm
440 0 0 ▼a 가장 쉬운 책 시리즈 ; ▼v 001
500 ▼a 색인수록
650 0 ▼a Haskell (Computer program language)
700 1 ▼a 황반석, ▼e
900 1 0 ▼a 리포바카, 미란, ▼e
945 ▼a KLPA

소장정보

No. 소장처 청구기호 등록번호 도서상태 반납예정일 예약 서비스
No. 1 소장처 과학도서관/Sci-Info(1층서고)/ 청구기호 005.133 H349 2014 등록번호 121229234 도서상태 대출중 반납예정일 2022-09-13 예약 예약가능 R 서비스 M

컨텐츠정보

책소개

가장 쉬운 책 시리즈 1권. 복잡한 함수형 언어를 정말로 재미있고 잘 설명한 책이다. 저자의 경험에서 우러나오는 지식들과 최신 정보들, 그리고 가장 중요하고 유용한 부분이라고 할 수 있는 예제 코드들로 엮인 이 책은 여러분이 상상할 수 없는 방법으로 함수형 언어를 설명한다.

이 책은 기본 구문과 재귀, 타입, 타입 클래스와 같은 기초적인 사항부터 시작해서 기초를 다진 후 진정한 마스터 클래스를 다룬다. 이 과정을 통해 여러분은 실용적인 함수와 모나드, 지퍼 등, 하스켈의 다른 모든 구조들에 대하여 배우게 될 것이다.

하스켈을 배우기 위한 가장 쉬운 지침서!

《가장 쉬운 하스켈 책》은 복잡한 함수형 언어를 정말로 재미있고 잘 설명한 책이다. 저자의 경험에서 우러나오는 지식들과 최신 정보들, 그리고 가장 중요하고 유용한 부분이라고 할 수 있는 예제 코드들로 엮인 이 책은 여러분이 상상할 수 없는 방법으로 함수형 언어를 설명한다.

하스켈은 재미있다. 그리고 그게 전부다!

이 책은 기본 구문과 재귀, 타입, 타입 클래스와 같은 기초적인 사항부터 시작해서 기초를 다진 후 진정한 마스터 클래스를 다룬다. 이 과정을 통해 여러분은 실용적인 함수와 모나드, 지퍼 등, 하스켈의 다른 모든 구조들에 대하여 배우게 될 것이다.

저자의 풍부한 (가끔은 엉뚱한) 상상력이 발휘된 예제들을 통해 여러분이 배우게 될 것은 다음과 같다.

- 완전한 함수형 프로그래밍 기술들을 거리낌없이 사용하게 된 부작용으로 실소할 것이다.
- 무한의 데이터 세트를 가지고 놀기 위해 하스켈의 "느긋함"이란 마법을 사용한다.
- 여러분만의 타입과 타입 클래스, 모듈을 생성하여 프로그램을 구성한다.
- 여러분만의 천재성이 가득한 프로그램을 세상에 공유하기 위해 하스켈의 우아한 입력/출력 시스템을 사용한다.

저자의 머릿속을 파고들어 지식과 경험을 배워보자. 하스켈이라는 강력한 언어를 배우기 위해 이 책을 읽는 것보다 더 좋은 방법은 아마도 찾지 못할 것이다.

독자대상
초급

하스켈은 재미있다. 그리고 그게 전부다!

이 책은 C++와 자바, 파이썬과 같은 명령형 언어들에 대한 경험이 있고, 이제는 하스켈을 공부해보려는 독자를 대상으로 한다. 혹시라도 프로그래밍 경험이 충분하지 않다고 해도, 여러분처럼 똑똑한 사람이라면 충분히 하스켈을 따라 배울 수 있을 것이라고 믿는다.

하스켈에 대한 첫 반응은 "이건 너무 이상한 언어잖아!"이었다. 하지만 처음 시작하는 단계에 존재하는 고비를 넘기니 모든 것이 순조로웠다. 비록 하스켈이 처음에는 이상해 보이더라도 포기하지 말자. 하스켈을 배우는 것은 프로그래밍에 대한 거의 모든 것을 다시 처음 배우는 것과 같을 것이다.

참고
만약 하스켈을 공부하는 데 심각한 문제가 발생한다면 프리노드(freenode) 네트워크의 IRC 채널인 #haskell이 질문을 할 수 있는 가장 적합한 곳이다. 그곳에 있는 사람들은 친절하며 인내심과 이해심이 많다. 하스켈을 처음 시작하는 사람들에게는 최고의 자원이다.


정보제공 : Aladin

저자소개

미란 리포바카(지은이)

슬로베니아의 류블랴나(Ljubljana)에서 컴퓨터 공학을 배웠다. 하스켈에 대한 열정뿐만 아니라, 복싱을 즐기며 베이스 키타를 연주하고 그림도 그린다. 그는 해골 춤과 숫자 71에 빠져있으며, 자동문을 통과할 때면 자신의 마음으로 문을 여는 것처럼 행동한다.

황반석(옮긴이)

한양대학교에서 컴퓨터 공학을 전공한 후, 지금까지 개발자의 길을 걷는 중입니다. 애플리케이션 개발이 천직임을 인정하면서도 혹시 다른 재능도 있는 건 아닐까 하는 희망으로 아이스하키도 해보고 기타도 만져 봤지만, 결국은 컴퓨터 앞에 앉아 개발에 몰두하는 자신을 발견하곤 합니다. 최근에는 플러터 같은 멀티 플랫폼 개발에 관심이 있습니다. 옮긴 책으로는 《핵심만 골라 배우는 SwiftUI 기반의 iOS 프로그래밍》(제이펍, 2020) 외 13종이 있으며, 독자를 위한 인터넷 카페(http://cafe.naver.com/petersbook)도 운영하고 있습니다.

정보제공 : Aladin

목차

저자 소개 = ⅴ
감사의 글 = ⅴ
역자 소개 = ⅵ
역자 머리말 = ⅶ
서문 = ⅸ
1장. 시작하기 = 1
 함수 호출하기 = 3
 첫 번째 함수 = 5
 리스트 소개 = 8
  연결 = 8
  리스트 항목에 접근하기 = 9
  리스트 안의 리스트 = 10
  리스트 비교하기 = 10
  더 많은 리스트 연산 = 11
 범위 = 14
 리스트 통합 = 16
 튜플 = 20
  튜플 이용하기 = 20
  페어 이용하기 = 21
  직각 삼각형 찾기 = 22
2장. 타입 = 25
 명시적 타입 선언 = 25
 일반적인 하스켈 타입 = 27
 타입 변수 = 28
 타입 클래스 101 = 29
  Eq 타입 클래스 = 30
  Ord 타입 클래스 = 30
  Show 타입 클래스 = 31
  Read 타입 클래스 = 31
  Enum 타입 클래스 = 33
  Bounded 타입 클래스 = 34
  Num 타입 클래스 = 34
  Floating 타입 클래스 = 35
  Integral 타입 클래스 = 35
 타입 클래스에 대한 마지막 정리 = 36
3장. 함수의 구문 = 37
 패턴 매칭 = 37
  튜플의 패턴 매칭 = 39
  리스트와 리스트 통합의 패턴 매칭 = 40
  as-패턴 = 42
 가드 = 43
 where = 45
  범위 = 46
  where와 함께하는 패턴 매칭 = 47
  where 블록 속의 함수 = 47
 let = 48
  리스트 통합에서의 let = 49
  GHCi에서의 let = 50
 case 표현식 = 50
4장. 개념적인 개요 = 53
 Maximum = 54
 몇 가지 재귀함수들 = 55
  replicate = 55
  take = 56
  reverse = 57
  repeat = 57
  zip = 57
  elem = 58
 정렬 = 58
  알고리즘 = 58
  코드 = 60
 재귀적으로 생각하기 = 60
5장. 고차원 함수 = 63
 커리된 함수 = 63
  섹션 = 66
  함수 출력하기 = 66
 잘 정리된 고차원주의 = 67
  zipWith 구현하기 = 68
  flip 구현하기 = 69
 함수형 프로그래머의 도구상자 = 70
  map 함수 = 70
  filter 함수 = 71
  map과 filter에 대한 예제 = 72
  여러 매개변수와 함수 매핑하기 = 75
 람다 = 75
 폴드 = 77
  foldl로 레프트 폴드 = 78
  foldr로 라이트 폴드 = 79
  foldl1과 foldr1 함수 = 80
  몇 가지 폴드 예제 = 81
  폴드를 보는 또 다른 방법 = 82
  무한 리스트 폴드하기 = 83
  스캔 = 84
 $를 가진 함수 애플리케이션 = 85
 합성 함수 = 87
  여러 매개변수를 갖는 합성 함수 = 88
  포인트 프리 스타일 = 89
6장. 모듈 = 91
 모듈 임포트하기 = 91
 모듈 함수로 문제 해결하기 = 93
  단어 카운팅 = 93
  건초 더미에서 바늘 찾기 = 95
  시저 암호 = 96
  엄격한 레프트 폴드 = 98
  숫자 찾기 = 99
 값에 키 매핑하기 = 102
  어소시에이션 리스트 = 102
  Data.Map 입력 = 104
 모듈 만들기 = 109
  Geometry 모듈 = 109
  계층적인 모듈 = 111
7장. 타입과 타입 클래스 만들기 = 113
 새로운 데이터 타입 정의하기 = 113
 구체화하기 = 114
  Point 데이터 타입으로 Shape 개선하기 = 115
  모듈에 있는 Shape를 익스포트하기 = 117
 레코드 구문 = 118
 타입 매개변수 = 121
  Car를 매개변수화해야 하나? = 123
  벡터 = 125
 파생된 인스턴스 = 127
  사람 동일시하기 = 127
  읽는 방법 = 129
  순서 = 130
  한 주의 어떤 요일 = 131
  타입 동의어 = 132
  보기 좋은 전화번호부 = 133
  타입 동의어 매개변수화하기 = 134
  Left, 그리고 나서 Right = 135
 재귀적인 데이터 구조 = 138
  리스트 개선하기 = 139
  트리 = 140
 타입 클래스 102 = 144
  Eq 타입 클래스의 내부 = 144
  신호등 데이터 타입 = 145
  하위 클래스 = 146
  타입 클래스의 인스턴스처럼 매개변수화된 타입 = 147
 Yes-No 타입 클래스 = 149
 Functor 타입 클래스 = 152
  펑터인 Maybe = 154
  트리 역시 펑터다 = 155
  펑터인 Either a = 156
 종류와 몇몇 타입 = 157
8장. 입력과 출력 = 161
 순수한 것과 순수하지 않은 것을 분리하기 = 161
 Hello, World! = 162
 I/O 작업을 함께 붙이기 = 164
  I/O 작업 내에서 let 사용하기 = 166
  거꾸로 넣기 = 167
 몇 가지 유용한 I/O 함수들 = 170
  putStr = 170
  putChar = 170
  print = 171
  when = 172
  sequence = 172
  mapM = 174
  forever = 174
  forM = 174
 I/O 작업 리뷰 = 176
9장. More 입력과 출력 = 177
 파일과 스트림 = 177
  입력 리다이렉션 = 177
  입력 스트림에서 문자열 얻기 = 178
  입력 변형하기 = 181
 파일 읽기와 쓰기 = 183
  withFile 함수 이용하기 = 185
  Bracket 타임 = 186
  핸들을 잡아라! = 187
 To-do 리스트 = 188
  항목 삭제하기 = 189
  정리하기 = 191
 커맨드 라인 인자 = 192
 할 일 리스트 가지고 놀기 = 194
  멀티태스킹 할 일 리스트 = 194
  잘못된 입력 처리하기 = 198
 랜덤 = 199
  동전 던지기 = 202
  더 많은 랜덤 함수들 = 202
  랜덤과 I/O = 204
 바이트스트링 = 207
  엄격한 바이트스트링과 느긋한 바이트스트링 = 208
  바이트스트링으로 파일 복사하기 = 211
10장. 함수적으로 문제 해결하기 = 213
 역(逆) 폴란드 기법 계산기 = 213
  RPN 표현식 계산하기 = 213
  RPN 함수 만들기 = 214
  연산자 더 추가하기 = 217
 히드로 공항에서 런던까지 = 218
  가장 빠른 경로 계산하기 = 219
  하스켈로 도로 시스템 표현하기 = 221
  최적 경로 함수 만들기 = 222
  입력으로 도로 시스템 얻기 = 225
11장. 어플리커티브 펑터 = 229
 펑터의 귀환 = 229
  펑터인 I/O 작업 = 230
  펑터인 함수 = 232
 펑터 규칙 = 235
  규칙 1 = 236
  규칙 2 = 236
  규칙 깨기 = 237
 어플리커티브 펑터 사용하기 = 239
  Applicative = 240
  Maybe Applicative 펑터 = 241
  어플리커티브 스타일 = 243
  List = 245
  IO 역시 어플리커티브 펑터다 = 247
  어플리커티브인 함수 = 248
  리스트 합치기 = 250
  어플리커티브 규칙 = 251
 어플리커티브를 위한 유용한 함수들 = 252
12장. 모노이드 = 257
 기존 타입을 새 타입으로 래핑하기 = 257
  타입 클래스 인스턴스를 만들기 위해 newtype 사용하기 = 260
  newtype의 느긋함 = 261
  type, newtype, data = 263
 모노이드에 대하여 = 265
  모노이드 타입 클래스 = 266
  모노이드 규칙 = 267
 모노이드 만나기 = 268
  리스트는 모노이드다 = 268
  곱셈과 덧셈 = 269
  Any와 All = 271
  Ordering 모노이드 = 272
  Maybe 모노이드 = 275
 모노이드로 폴드하기 = 277
13장. 수많은 모나드 = 281
 강화된 어플리커티브 펑터 = 281
 Maybe에 발 담그기 = 283
 모나드 타입 클래스 = 286
 줄 타기 = 288
  코드, 코드, 코드 = 288
  난 떨어질 거야 = 290
  줄 위의 바나나 = 293
 do 표기법 = 294
  내가 했던 것처럼 해 = 296
  돌아온 피에르 = 297
  패턴 매칭과 실패 = 298
 리스트 모나드 = 300
  do 표기법과 리스트 통합 = 302
  MonadPlus와 guard 함수 = 303
  기사의 임무 = 305
 모나드 규칙 = 308
  좌항등원 = 308
  우항등원 = 309
  결합성 = 310
14장. More 모나드 = 313
 Writer = 313
  구조에 나선 모노이드 = 316
  Writer 타입 = 318
  Writer로 do 표기법 이용하기 = 319
  로그를 프로그램에 추가하기 = 321
  비효율적인 리스트 구조 = 323
  디퍼런스 리스트 사용하기 = 324
  성능 비교하기 = 326
 Reader = 327
  모나드인 함수 = 328
  리더 모나드 = 329
 세련되게 상태를 유지하는 계산 = 330
  상태를 유지하는 계산 = 331
  스택 = 331
  State 모나드 = 333
  State 얻기와 설정하기 = 336
  난수와 State 모나드 = 337
 에러 = 338
 몇 가지 유용한 모나드 함수들 = 340
  liftM = 341
  join 함수 = 344
  filterM = 346
  foldM = 349
 안전한 RPN 계산기 만들기 = 350
 모나드 함수 결합하기 = 353
 모나드 만들기 = 355
15장. 지퍼 = 361
 찾아가기 = 362
  빵가루 흔적 = 364
  돌아가기 = 366
  초점을 둔 트리 조작하기 = 368
  공기 좋고 깨끗한 정상으로 곧바로 가기 = 370
 리스트에 초점 맞추기 = 370
 매우 간단한 파일시스템 = 372
  파일시스템을 위한 지퍼 만들기 = 373
  파일시스템 조작하기 = 376
주의! = 377
감사합니다! = 379
찾아보기 = 381

관련분야 신착자료

Coene, John (2021)
クジラ飛行机 (2022)