広告
イベントの説明
概要
主に "Typeclassopedia" に掲載されている型クラスを理解するためのもくもく会です.
毎回指定した型クラスに関する "Typeclassopedia" の内容や,型クラスに関する記事を読んだり,モジュール等で定義されている関数を確認したりソースコードを読んだりすることを各自で行います.
日時
- 毎週金曜日 22:00 ~ 23:30
- 題材によっては,早めに終えることがあります
- 2018 年内は,12/14, 12/21 の残り2回を予定しています
進め方
-
題材
- 毎回,対象とする型クラスを指定します
- 必ずしも "Typeclassopedia" の列挙順で指定しません
- "Typeclassopedia" に掲載されていない型クラスを扱うことがあります
- 分量が多ければ,複数回に分けたり次回に回したりすることがあります
-
もくもく会
- 連絡事項があれば,Discord にてテキストチャットで伝えます
- 先に勉強会を終えたり時間に遅れたりしても,お構いなく.ご自分の都合を優先してください.
- 対象の型クラスを時間中に終えられず次回までに終えることが困難であれば,次回の型クラスを決定する前に管理者に伝えてください.次回の題材を調整します.
- 時間が限られているとはいえ,各回で取り上げている内容の理解をできるだけ重視してください
題材予定の型クラス
-
[済]
Semigroup,Monoid -
[済]
Functor,Bifunctor -
[済]
Contravariant,Profunctor -
[済]
Apply,Applicative,Biapply,Biapplicative,Divisible -
[済]
Bind, 基本的なMonad -
[済]
MonadFail,MonadFix, ほかMonad関連 -
[済] "Monad Transformer", "Extensible Effect"
-
継続
Comonad,ComonadApply(Applicative関連だけど...)
以下は,2019年を予定
-
Alt,Plus,Alternative,MonadPlus,Decidable -
Foldable,Foldable1,Bifoldable
Traversable,Traversable1,Bitraversable,Distributive,Witherable
-
Semigroupid,Category -
Arrow関連
(備考) 一部型クラス名を変更する議論: semigroupoids issue#26
想定する参加者
-
型クラスの関係を確認したい方
-
ある型クラスで,どのようなメソッドが定義されているのかを確認したい方
-
ある型クラスのメソッドが,どのように実装されているのかを確認したい方
第11回の内容
扱う型クラスと題材例
-
"Comonad" 関連 (
comonadで定義されている全ての型クラスを含む)-
前回の続き
-
comonad- Hackage:
comonad-5.0.4
- Hackage:
-
streams-
Hackage:
streams-3.3Various Haskell 2010 stream comonads
Data.Stream.Futureprovides a coinductive anti-causal stream, or non-emptyZipList. The comonad provides access to only the tail of the stream.
-
-
-
これまで扱った型クラス
-
"co-log: Composable Contravariant Combinatorial Comonadic Configurable Convenient Logging" (kowainik, 20180925, Blog)
-
今まで取り扱ってきた一部の型クラスと後日取り扱う
Decidableを用いた,ライブラリco-logの説明 -
(注意) 標準的 (?) な環境で上記のブログに従って自分で実装していこうとすると,GHC 拡張を追加したりパッケージを追加したり必要があります
-
Hackage:
co-log-0.2.0Composable Contravariant Comonadic Logging Library
The default implementation of logging based on
co-log-core. -
Hackage:
co-log-core-0.1.1This package provides core types and functions to work with the
LogActiondata type which is both simple and powerful.Key design point here is that
LogActionis:SemigroupContravariantComonad
-
-
やり残した型クラス
-
もう少し深めたい型クラス
-
タイムスケジュール
| 時刻 | 内容 |
|---|---|
| 22:00 ~ 23:20 | もくもく会 |
| 23:20 ~ 23:30 | 次回の案内 |
備考
- Typeclassopedia の内容は不定期更新されているため,毎回最新版のものを利用します
資料 資料をもっと見る/編集する
資料が投稿されると、最新の3件が表示されます。
広告

エンジニアをつなぐ
connpass は株式会社ビープラウドが開発・運営しています