Haskell勉強会

関数型プログラミングの学習日記

基礎からわかる Elm

Haskellと似たElmというAltJSがあります。

 

guide.elm-lang.jp

 

Elm は JavaScriptコンパイルできる関数型プログラミング言語です。

ウェブサイトやウェブアプリケーションを作るツールという面では React のようなプロジェクトだと言えます。

 

Elmをちょっと試してみて、関数型プログラミングの勉強になると思い、「基礎からわかる Elm」という本も買ってみました。

 

基礎からわかる Elm

基礎からわかる Elm

 

 

 

目次

●CHAPTER 01 Elmをはじめよう

001 背景とElmの誕生

002 Elmの概要

003 インストールと環境構築

004 Hello, world!

 

●CHAPTER 02 Elmの基礎文法

005 準備

006 基本文法ひとめぐり

007 型を読む

008 型を書く

009 カスタム型とパターンマッチ

010 演算子とパイプ

011 再代入の禁止と再帰

012 Maybe

013 リスト

014 その他のデータ構造

015 Debug

016 モジュールとパッケージ

 

●CHAPTER 03 アプリケーションの作成

017 HTML

018 Elmアーキテクチャ

019 実践1:フォーム入力

020 コマンドとサブスクリプション

021 コマンド

022 JSON

023 実践2:検索ボックス

024 サブスクリプション

025 Task

026 描画の仕組みと高速化

 

●CHAPTER 04 Webアプリ開発の実践

027 プロジェクトの管理

028 ElmからJavaScriptを生成する

029 フラグとポート

030 ナビゲーション

031 URLのパース

032 ユニットテスト

033 実践3:ナビゲーションとテスト

034 ビルドの最適化

 

●CHAPTER 05 設計パターン

035 ビューを再利用する

036 UIの状態を管理する

037 SPAを設計する

 

●CHAPTER 06 一歩先のトピック

038 コミュニティとOSS

039 ライブラリの公開

040 開発ツールの紹介

041 CSSの管理テクニック

042 特殊なモジュール

 

索引

 

著者紹介

鳥居 陽介(とりい・ようすけ)

Webフロントエンドエンジニア。高機能なGUIが好物で、常に手を動かしては怪しげなものを作ったり試したりしている。Idein株式会社勤務。プログラミング以外では作曲が趣味。

 

出版社情報

基礎からわかる Elm|株式会社 C&R研究所

http://www.c-r.com/book/detail/1299

 

本書のサンプルコード(GitHub

https://github.com/jinjor/elm-book

 

書評

  1. Elmの公式ガイドをまず読んでみて、Elmの概要を把握する。
  2. 次に、Elmの解説本を読んで、細部を補足してみる。
  3. 次に、実際にWebアプリを作ってみて、分からない点はネットで調べる/聞く。

 

本書を読むのは、このステップ2の段階ですね。

Elmの基本を押さえておけば、ステップ3の実践段階で苦労が減らせるはずです。

 

WebアプリのGUI作法

Elmアーキテクチャの仕組みを学べば、React.jsやVue.jsでWebアプリを作る際にも参考にできます。

 

employment.en-japan.com

 

単一ストアと不変性による予測可能な状態管理

Fluxはアーキテクチャであり、Fluxを実装したフレームワークは、Fluxの発表後たくさん登場しました。その中でも現在広く使われているのは、Reduxです。

Reduxは、FluxやElmの考え方をベースにした、状態管理のためのライブラリです。

 

qiita.com

 

f:id:hamamuratakuo:20191113070053j:plain

 

Elm言語資料 · GitHub

 

f:id:hamamuratakuo:20191113070700j:plain

 

medium.com

 

f:id:hamamuratakuo:20191113071655g:plain

 

本書を参考にして、ElmでWebアプリを作ってみたいです!