31
28

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Elm v0.17の時点の学習メモ 1日目

Posted at

モチベーション

Evan Czaplicki「脱FRP。またはThe Elm ArchitectureからSignalを消した件」 - 以下斜め読んだ内容 を読んで、関数型のおもちゃから、かなり実用指向な舵取りをしているようにみえ、現時点でどれぐらい使い物になるか試してみよう、という気になった。

いつもの言語(JS)から距離があるので、徳が積めそう。

前提: 定期的にハローワールド程度はどう書くのか、ということは調べていたので、まったくの初見ではない。

読んだ資料

guide~ は適当に読み飛ばした部分が多いので、詰まったらまた読み返す。elm-tutorial よさそうと思っただけで、まだやってない。
注意点として、0.16より前のコードはあんまり動かない。

副読

Install

3つある

cabal でいれたやつは消しにくいので、nodeがあれば elm, そうでなければ

あるとよい知識

  • Haskell
    • 全体的にサブセットぽさ + 正格評価 + UI構築に特化したDSLぽさ
    • Haskellだと思って触るとHaskellじゃなくて苛々するし、全く新しい言語だと思うとHaskellのお約束だから察しろ、で説明省かれるし、すごいH本の9章ぐらいまで読んでおくと良い。
  • Redux
    • evancz曰く「Reduxにあんな形で丸パクリされたのは痛恨のミス」ということらしいが、この知識があると Html.App.program がまんま Redux だということがわかる。
  • Rx.Observable
    • subscriptions で扱うものがそれっぽい
    • 0.16以前はSignalでもっと抽象化されていたらしい
  • 仮想DOM

コマンド

  • elm-make: ビルドコマンド
  • elm-reactor: 動的にビルドしてくれる開発用サーバー

次に調べること

  • JSとのインターフェースの持ち方
  • パッケージの作り方
  • ライフゲーム書いてみる

明日やるかも

31
28
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
31
28

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?