'Extensions to the “deriving” mechanism' 勉強会 #4
イベント内容
概要
Glasgow Haskell Compiler (以下 GHC) には、様々な言語拡張機能が存在します。
この勉強会では主に "Glasgow Haskell Compiler User's Guide" (以下 "GHC User's Guide") を読んで、 derive 機能の拡張に関する理解を深めようということを目的としています。
目的
- GHC 拡張の
deriving機能の理解
想定する参加者
- GHC の
Deriving...という拡張の存在を知っている方 - "GHC User's Guide" の 'Extensions to the “deriving” mechanism' を読んだことがない方
想定していない参加者
- Template Haskell を理解したい方
進め方
今のところ、Discord (または Skype) の音声通話 (と必要ならば画面共有) で読み進めていく予定です。 しかし、人によって重視したい内容や進度が異なるため、単なる "もくもく会" に移行するかもしれません。
その他、連絡事項や相談内容があれば,Discord (または Skype) のテキストチャットや connpass のイベント案内にてお伝え致します。
第04回の内容
(注意) ここに掲載している全て (特に、参照と参考の記載事項) を読み進める訳ではありません
(追記: 2019-06-06) 順番を入れ替えました
"GHC User's Guide":
'13.6.4. Deriving instances of extra classes (Data, etc.)':
-
'13.6.4.6. Deriving Lift instances':
DeriveLift-
参照: '13.27.1. Syntax':
Q Exp,Q (TExp a) -
参照: Release notes for version 8.10.1 'Template Haskell':
liftTyped -
参照:
HEAD'11.6.4.6. Deriving Lift instances'
-
-
'13.6.4.4. Deriving Data instances':
DeriveDataTypeable- 参考:
base-4.12.0.0(GHC 8.6):Data.Data
- 参考:
-
'13.6.4.5. Deriving Typeable instances'
-
参考:
base-4.12.0.0(GHC 8.6):-
- "Typeable and Data in Haskell" (2014-04-22 © Chris Done)
-
- "Dynamic types in Haskell"(2017-09-24 © Callum Cowcay)
-
-
参考: "What I Wish I Knew When Learning Haskell": 'Generics' (© Stephen Diehl)
-
Typeableの変遷:-
'1.5. Release notes for version 7.8.1': '1.5.1. Highlights'
-
AutoDeriveTypeable -
参考: GitLab GHC Wiki: 'language pragma history'
-
参考:
Cabal-2.4.1.0:Language.Haskell.Extension.KnownExtension
-
-
'Release notes for version 8.2.1': '3.1. Highlights':
Type.Reflection- 参考:
base-4.10.0.0: 'Changelog'
- 参考:
-
-
'13.6.6. Deriving any other class':
DeriveDeriveAnyClass-
参照: '13.32.5. MINIMAL pragma':
MINIMAL -
参照: '13.8.1.4. Default method signatures':
DefaultSignatures
-
注意事項
- 主催者は
derivingに関する内容に精通しているわけではありません - 主催者は "Typeclassopedia" に関連する題材として、 'Extensions to the “deriving” mechanism' を読み進めるつもりです
- 読み進める形式を想定しているため、コードを書いて色々試すのは参加者各自にお願いすることになると思います。
- 全体的に勉強会自体はあっさりした内容なものになる可能性が高く、特に
DeriveGeneric,DeriveLiftの扱いは顕著になると思われます - 毎回模範的に準備して進めるつもりはありません
- 模範的なプランがあり、それに基づいて進行するわけではありません (場当たり的になると思います)
- 進度状況や関心の度合いによって、もくもく会に移行する可能性があります
日時
- 毎週金曜日 22:00 ~ 23:30
履歴
| 回数 | 内容 |
|---|---|
| 01 | '13.6. Extensions to the “deriving” mechanism' ~ '13.6.3. Stand-alone deriving declarations' (StandaloneDeriving) |
''13.4.1. Data types with no constructors (EmptyDataDecls) |
|
| ghc-proposals#0006: "Overhaul deriving instances for empty data types" | |
| 02 | '13.6.4 Deriving instances of extra classes (Data, etc.)' ~ '13.6.4.3. Deriving Traversable instances' |
| 03 | GHC Wiki: 'derive functor' |
注意事項
※ 掲載タイミングや更新頻度によっては、情報提供元ページの内容と差異が発生しますので予めご了承ください。
※ 最新情報の確認や参加申込手続き、イベントに関するお問い合わせ等は情報提供元ページにてお願いします。
新規会員登録
このイベントに申し込むには会員登録が必要です。
アカウント登録済みの方はログインしてください。
※ ソーシャルアカウントで登録するとログインが簡単に行えます。
※ 連携したソーシャルアカウントは、会員登録完了後にいつでも変更できます。

