We Are JavaScripters! @26th で使用したスライドです。
Elm を特徴づけるものとして、純粋関数型プログラミングの枠内で Web フロントエンドをうまく扱うことに成功したいわゆる The Elm Architecture (TEA) があります。初心者向けの解説としてよく Msg, Model, update からなる図が挙げられていますが、実用的なものを作る場合 Cmd と Sub は避けては取れない要素です。
そこで本スライドでは、Cmd と Sub を用いた JavaScript ライブラリとの連携について簡単に解説しました。JavaScript の関数を直接内部に埋め込む他の AltJS と異なり、Elm における JavaScript 連携はクライアント・サーバ間の通信と似た形になるのがポイントです。
ちなみに当日会場では、Firebase を利用した「リアルタイム化」カウンタのデモを披露しました。
イベント概要:https://wajs.connpass.com/event/107088/
ブログ記事:http://ccvanishing.hateblo.jp/entry/2018/11/24/232705
デモアプリ:https://github.com/y-taka-23/elm-realtime-counter