haskell を少しづつ学んでいく
Haskellの最小の文法に触れ、最初の小さなプログラムを作ってGitHubにアップする
- Windows で環境を作成
- 最初のHello, World!をコンパイル&実行
Intなどの型を確認- 簡単な関数を書く
- リストの使い方
- タプルの使い方
- 演習
- リストの合計を計算する関数を書く
- タプルの要素を入れ替える関数を書く
リストの合計は sum を使用した
C# の Enumerable.Aggregate っぽい記述はまたの機会に
- パターンマッチ
- ガード
- 演習
- 整数を受け取って、正負ゼロを文字列で返す関数を書く
- 再帰関数
- 演習
- 自然数nまでの総和を再帰で計算する
- map
- filter
- fold
ついでに trace も使ってみた
- 小さなまとめプログラムを作る
- 問題はChatGPTに作ってもらった
- 開発環境を Macintosh へ移行した
高階関数と関数型思考の深化
関数を扱う関数(高階関数)やラムダ式に慣れ、関数型らしい書き方を自然に使えるようにする
- 2回関数を実行する applyTwice の理解
→ だんだん怪しくなってきた。ChatGPT に色々聞いた
- ラムダ式でmap関数を使ってみる
- 関数合成演算子 (.) を学ぶ
- ポイントフリースタイルとは何か
- map, filter, foldr, foldl の使い分け
- 奇数だけ取り出して2倍にする
- リストの積を計算する
- Maybe型とは?(値がある/ないを扱う)