Haskell:Tutorials
Haskell 사용 방법 정리.
하스켈 기초 (Haskell Basics)
- 환경 갖추기 (Getting set up)
- 변수와 함수 (Variables and functions)
- 진위값 (Truth values)
- 타입의 기초 (Type basics)
- 리스트와 튜플 (Lists and tuples)
- 타입의 기초2 (Type basics II)
- 어휘 쌓기 (Building vocabulary)
- 간단한 입출력 (Simple input and output)
하스켈 초급 (Elementary Haskell)
- 재귀 (Recursion)
- 리스트 보충설명 (More about lists)
- 리스트 처리 (List processing)
- 타입 선언 (Type declarations)
- 패턴 매칭 (Pattern matching)
- 제어 구조 (Control structures)
- 함수 보충설명 (More on functions)
- 고차함수 (Higher order functions)
- GHCi 효율적으로 사용하기 (Using GHCi effectively)
하스켈 중급 (Intermediate Haskell)
- 모듈 (Modules)
- 독립실행 프로그램 (Standalone programs)
- 들여쓰기 (Indentation)
- 데이터타입 보충설명 (More on datatypes)
- 다른 자료구조들 (Other data structures)
- 클래스와 타입 (Classes and types)
- Functor 클래스 (The Functor class)
모나드 (Monads)
- 모나드 이해하기
- Maybe - List
- do 표기
- IO - State
- 가산적 모나드 (MonadPlus)
- 모나드 변환기
하스켈 고급 (Advanced Haskell)
- 모노이드
- 적용성 펑터
- Foldable
- Traversable
- 애로우 튜토리얼
- 애로우 이해하기
- Continuation passing style (CPS)
- 지퍼
- 렌즈
- Comonads
- Value recursion (MonadFix)
- Effectful streaming
- 가변 객체
- 동시성
- Template Haskell
- Type Families
타입과의 유희 (Fun with Types)
- 다형성 기초
- Existentially qualified types
- 타입 클래스 고급
- 팬텀 타입
- 일반화된 대수적 데이터 타입 (GADT)
- 데이터타입 대수
- 타입 생성자 & 종(kind)
여러 이론들 (Wider Theory)
- 표기 의미론 (Denotational semantics)
- Equational reasoning
- Program derivation
- 범주론
- The Curry-Howard isomorphism
- fix and recursion
하스켈 수행능력 (Haskell Performance)
- 입문
- 수행능력 예시들
- 그래프 소거
- Laziness
- Time and space profiling
- Strictness
- 알고리즘 복잡도
- 자료구조
- Parallelism
일반적인 작업 (General Practices)
- 디버깅
- 테스팅
- 소프트웨어 패키징 (Cabal)
- Foreign Function Interface(FFI) 활용하기
- 제네릭 프로그래밍: 정형화된 코드는 그만
특수 작업 (Specialised Tasks)
- 그래픽 유저 인터페이스 (GUI)
- 데이터베이스
- XML 다루기
- 수학식 파싱
- 기본적인 타입 검사기 작성