« 濱田庄司記念益子参考館に行ってきた | トップページ | オリセちゃん2歳に »

2021.12.19

Elmを学ぶ

この週末,鳥居陽介『基礎からわかる Elm』(C&R研究所)を読みながら,プログラミング言語Elmを学んでいるわけである。

Webアプリケーションの開発の仕方を学ぼうと思って。

基礎からわかる Elm』は非常にわかりやすい本なのだが,全くのプログラミング初心者には向いていない。

ある程度,Windows PowershellなどのCUIコンソールが使えることが必要。

そういう意味では,老生のような,GUIが無かった時代のコンピュータ利用経験がある人間には問題なし。

以下,Elmによるプログラミングを学ぶ上での留意事項。

 

elm-formatのインストールについて

Elmのインストール作業自体は,この本の20ページに書いてあるように公式サイトからインストーラをダウンロードすれば問題なくできる。

しかしながら,コードを整形するためのツール,elm-formatをインストールしようとすれば,まず,node.jsのインストールもnode.jsの公式サイトに行き,別途行わないといけない。

そして,powershell上で

npm install -g elm-format

と打ち込むことでelm-formatがインストールされる(本書22ページ参照)。

なお,一般ユーザとしてWindows Powershellでelm-formatを使おうとすれば,Powershellを管理者として立ち上げ,

Set-ExecutionPolicy Remotesigned

と打ち込んで Y と答えて設定しておかないと,elm-formatが動かない。この辺は本には書いていないので,調べてみること(参考: Cheshire Wara)。

ということで,elm自体はともかく,elmでのプログラミングをサポートする環境づくりにはpowershellの知識が要る。

ちなみに老生はVisual Studio Codeをエディターとして使っているが,ここでもElm用のプラグインをインストールしないといけない。そのあたりの段取りは省略。

 

moduleの宣言を忘れないこと。

この本の最初のプログラムとして紹介されているのが,"Hello, world!"を表示する(htmlファイルを作成する)プログラムである(24~25ページ)。

サンプルコード(Hello.elm)の内容は次の通り:

import Html exposing (text)
main =
text "Hello, world!"

これを,本に書いてあるとおりの段取りでsrcというフォルダーの中に保存する。
しかしながら,24ページに書いてあるように

elm make src/Hello.elm

とコマンドを打ち込んでも


Detected problems in 1 module.
-- MODULE NAME MISSING ------------------------------------------- src\Hello.elm
I need the module name to be declared at the top of this file, like this:

module Hello exposing (..)

Try adding that as the first line of your file!

Note: It is best to replace (..) with an explicit list of types and functions you want to expose. When you know a value is only used within this module, you can refactor without worrying about uses elsewhere. Limiting exposed values can also speed up compilation because I can skip a bunch of work if I see that the exposed API has not changed.

というようにElmに指摘を受けることとなる。

そこで,サンプルコードに一行足して


module Hello exposing (..)
import Html exposing (text)
main =
text "Hello, world!"

と直してから

elm make src/hello.elm

というコマンドを再実行すれば,ちゃんとコンパイルされて,htmlファイルができる。

 

この本が書かれたときのElmのバージョンは0.19だったのだが,いまのバージョンは0.19.1なので,仕様が変わったのかもしれない。

 

ということで最初はいろいろ躓くが,それを乗り越えれば面白く学べる言語である。

|

« 濱田庄司記念益子参考館に行ってきた | トップページ | オリセちゃん2歳に »

パソコン・インターネット」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)




« 濱田庄司記念益子参考館に行ってきた | トップページ | オリセちゃん2歳に »