ゼミ課外勉強会(2024年)
西南学院大学 経済学部
担当 市東亘
第I部 基礎概念
第1回
日時
- 2024年2月17日(土)6:00〜7:40am オンライン
事前準備
勉強会記録
- なぜHaskellを学ぶのか?
- マルチコア時代の並列処理プログラミングでの関数型プログラミング手法の重要性
- エラー処理に長けたモナド
- 他言語にもモナディック・プログラミングが導入されていて.より上級のプログラミングを目指す際に役立つ
- 欠点
- スペースリーク(空間漏れ)を生じさせないようにプログラミングできるようになるには言語の深い知識が必要
- コードの最適化チューニングが難しい
- 他のプログラミング言語にはない独特な用語や概念があり難解
- 補足資料『Haskell入門』第1,2章練習問題解き合わせ
- テキスト 第1章解説
- 純粋性と副作用の入門的な説明.副作用とエラー処理について
第2回
日時
- 2024年2月24日(土)6:00〜7:45am オンライン
事前準備
勉強会記録
- 補足資料『Haskell入門』第3章解説
- Data.ListモジュールのAPIからランダムに関数を選び型シグニチャを読み取る練習.
- オブジェクト指向プログラミングにおけるクラスとインスタンスの関係,Haskellの型クラスとインスタンスの関係について解説.
- 補足資料の第3章練習問題を解き忘れたので次回行います.
第3回
日時
- 2024年3月2日(土)6:00〜7:50am オンライン
事前準備
勉強会記録
- 補足資料『Haskell入門』第3章練習問題全部,4章練習問題問1解説.
- 『Haskell入門』第4章練習問題 問2とテキスト第2章練習問題との違いについて
- 多相的に定義された関数の型を指定することで,目的の型を処理する関数を定義することについて
- カリー化について(Rでの実装と比較)
- リストのメモリ内での構造と計算時間について
第4回
日時
- 2024年3月9日(土)6:00〜7:50am オンライン
事前準備
勉強会記録
- コンス関数とリストのメモリ構造
- リストのパターンマッチとコンスセルの関係
- 末尾再帰
- 補足資料『Haskell入門』第4章のreverseHelper関数の説明
第5回
日時
- 2024年3月16日(土)6:30〜8:30am オンライン
事前準備
勉強会記録
第6回
日時
- 2024年3月23日(土)6:30〜8:00am オンライン
事前準備
勉強会記録
第7回
日時
- 2024年3月30日(土)6:30〜8:30am オンライン
事前準備
- テキスト 第5章を読んで練習問題を解いてきてください.
勉強会記録
- テキスト 第5章練習問題 問1〜問6解答解説
- リスト内包表記内のパターンマッチ,letによる局所定義,ガードの使い方.
- ジェネレータとRのapply系関数との類似点.複数ジェネレータと入れ子になったループ.
- do表記とリスト内包表記の関係について少し言及.
- カウンタとしてのジェネレータの役割と遅延評価について.
第8回
日時
- 2024年4月13日(土)6:30〜8:30am オンライン
事前準備
- テキスト
- 第5章練習問題 問7〜問9まで解いてきてください.
- 第6章を読んできてください.
勉強会記録
- テキスト
- 第5章練習問題 問7〜問9解説
- シーザー暗号プログラム,shift関数の色々な実装
第9回
日時
- 2024年4月20日(土)6:30〜8:15am オンライン
事前準備
- テキスト
- 第5章シーザー暗号の復号方法のおさらい.
- 第6章を読んできてください.
勉強会記録
- テキスト
- シーザー暗号の復号プログラムの実装と末尾再帰の実装練習
第10回
日時
- 2024年5月13日(月)21:00〜22:30 オンライン
事前準備
- テキスト
- 第5章シーザー暗号の復号プログラムの実装.
- 第6章練習問題.
- 『アルゴリズムの基本』,トーマス・コルメン著,第3章を読んできてください.特にマージソートをよく学習してきてください.
勉強会記録
- テキスト
- 第5章練習問題.シーザー暗号の大文字小文字の区別なく出現頻度を数えて復号するプログラムの実装例.
- 第6章練習問題,問1〜問4.末尾再帰による再実装.ユークリッドの互除法解説.
第11回
日時
- 2024年5月27日(月)21:00〜22:30 オンライン
事前準備
- テキスト 第6章 練習問題 問5以降を解いてきてください.