You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

128 lines
5.6 KiB
Markdown

# 하스켈 학습 가이드
이 글은 여러분이 하스켈을 배우는데 도움이 될 수 있도록 경험을 바탕으로 만들어진 가이드로 [하스켈 북 (Haskell Book)](https://haskellbook.com)의 저자 중 한 사람의 추천 목록입니다.
## 비 영어권 사람들을 위한 번역
- [In English](README.md)
- [Auf Deutsch](guide-de.md)
- [En Español](guide-es.md)
- [En Français](guide-fr.md)
- [Na Hrvatskom](guide-hr.md)
- [Bahasa Indonesia](guide-id.md)
- [In Italiano](guide-it.md)
- [日本語](guide-ja.md)
- [Em Português](guide-pt.md)
- [În Română](guide-ro.md)
- [По-русски](guide-ru.md)
- [Srpski](guide-sr.md)
- [Sa Tagalog](guide-tl.md)
- [Türkçe](guide-tr.md)
- [Українською](guide-ua.md)
- [简体中文](guide-zh_CN.md)
- [繁體中文](guide-zh_tw.md)
#### _이해가 잘 안된다고 계속 붙잡고 있지 마세요_. 진도를 계속 나가세요!
## 커뮤니티
저희 IRC 체널은 Freenode의 `#haskell-beginners` 입니다.
IRC 웹 클라이언트 [here](http://webchat.freenode.net/).
하스켈 [메일링 리스트](https://wiki.haskell.org/Mailing_lists).
### 커뮤니티 규칙
IRC 체널의 [커뮤니티 규칙](cdc.md)을 꼭 읽어주세요. 여러분이 지나치게 트롤링을 하지 않는 한 경고로 끝나겠지만, 반드시 이 체널은 하스켈을 배우고 가르치는 공간이라는 점을 명심해주세요.
# 하스켈 설치하기
## 하스켈을 설치하기 위해 Stack을 사용하세요
GHC를 설치하고 프로젝트를 만들기 위해 [Stack](https://haskellstack.org)을 사용하세요.
Stack을 처음 들어보거나 개요를 보기 원하신다면, [comprehensive Stack video tutorial](https://www.youtube.com/watch?v=sRonIB8ZStw)을 참고하세요.
## 그리고 HASKELL PLATFORM으로 설치하지 마세요
Haskell.org에서 지시하는 대로 설치하지 마시고, Stack을 사용하세요.
### 왜 platform을 사용하면 안되나요?
https://mail.haskell.org/pipermail/haskell-community/2015-September/000014.html
# 하스켈을 어떻게 배워야 하나요?
저희들은 2013년 봄학기 cis1940 강의에 있는 모든 문제를 풀어본 다음에 FP강의를 듣는 방법을 추천합니다. 두 강의 모두 아래에 링크가 걸려있습니다. 그 외에는 선택이며, 여러분이 찾을 수 있도록 아래에 링크가 있습니다.
## Haskell Programming from First Principles.
[@dmvianna](https://github.com/dmvianna)는 아래의 내용이 무료 권장 자료 일 뿐이라는 사실을 알려 드리고자합니다. 하지만 만약 책으로 보고 싶다면, 제가 쓴 [Haskell Book!](https://haskellbook.com)을 진심으로 추천합니다. 만약 어떤 이유로든 책을 구입할 여유가 없으면 [our support page](https://haskellbook.com/support.html)로 연락해주세요.
### Haskell Book은 여기에서 권장되는 모든 주요 내용을 포함합니다.
## Yorgey의 cis1940 강의
> Haskell Book을 구매하지 않았다면 이 강의를 먼저 들으세요. Haskell 입문을 위한 최고의 수업입니다.
[온라인](https://www.seas.upenn.edu/~cis1940/spring13/lectures.html)에서 보실 수 있습니다.
[Brent Yorgey](https://byorgey.wordpress.com)의 강의는 제가 찾아 본 것중 가장 좋은 강의입니다. 이 강의는 기본적인 하스켈 코딩능력을 갖춰줄 뿐만이 아니라 parser combinator를 이해하는데 도움을 주기 때문에 중요합니다.
만약 여러분이 프로그래머가 아니거나 프로그래밍을 해본적이 없다면 이 강의로 시작하는 것을 추천하지 않습니다. 그렇다면, [Thompson의 책](https://www.haskellcraft.com/craft3e/Home.html)을 먼저 보고 cis1940로 돌아가세요.
---
## 함수형 프로그래밍 강의
> 이 강의는 Yorgey의 cis1940 강의를 모두 보신 후에 추천드리는 강의입니다.
[GitHub](https://github.com/bitemyapp/fp-course)에서 볼 수 있습니다.
이 강의는 cis1940에서 소개한 추상화기법을 직접 사용해보고 실력을 길러줍니다.
이 강의는 하스켈에서 Functor, Applicative, Monad처럼 매일 사용되는 개념들에 익숙해지도록 훈련해주는 중요한 강의입니다.
cis1940를 먼저 보고 FP강의를 보는 방법이 저희들이 추천하는 하스켈 학습방법입니다.
---
## cis1940와 FP강의를 본 후의 보충강의
> 더 많은 자료와 중급 주제를 제공합니다.
cs240h는 온라인에서 볼 수 있습니다.
- [14년 봄학기](http://www.scs.stanford.edu/14sp-cs240h/)
- [16년 겨울학기](http://www.scs.stanford.edu/16wi-cs240h/)
이 강의는 Stanford에서 강의하시는 [Bryan O'Sullivan](https://github.com/bos)의 온라인 강의입니다. 만약 이분을 모르신다면, 나중에 필요하게 될 하스켈 라이브러리들을 살펴보면 그의 이름을 발견할 수 있습니다.
cis1940를 끝마쳤다면 phantom types나 information flow control, language extensions, concurrency, pipes, lenses 내용은 보신적이 있을 겁니다.
---
# Haskell의 특정 주제에 대한 자료
이 자료들은 cis1940와 FP강의를 들은 사람들에 대해 점검해보지 않았지만, 여러분이 어디서 시작해야 할지 도와주기 위해 [주제 리스트](specific_topucs.md)에 링크를 모아두었습니다. 이 리스트에는 툴과 에디터 같은 중급이나 고급정도의 개념들과 주제도 담겨있습니다.
## 토론
> [이 저장소](dialogues.md)에 있습니다.
이것들은 꽤 중요하고 도움이 될겁니다. 여기에 들어가서 다양한 주제들을 만나보실 수 있습니다.