z_blog:2019:190319_elm2
差分
このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン前のリビジョン次のリビジョン | 前のリビジョン | ||
z_blog:2019:190319_elm2 [2019/03/19] – [リンク] adash333 | z_blog:2019:190319_elm2 [2019/03/23] (現在) – [Elmリンク2] adash333 | ||
---|---|---|---|
行 1: | 行 1: | ||
====== 190319 Windows10でElm環境構築(2回目) ====== | ====== 190319 Windows10でElm環境構築(2回目) ====== | ||
+ | ===== Elmって何? ===== | ||
+ | Elm は、Webページの表示に用いる、 JavaScript にコンパイルできる関数型プログラミング言語だそうです。 | ||
+ | Elmで書いて、Javascriptに変換して、WEBページを作成することができるということになります。 | ||
+ | |||
+ | Javascriptよりも簡単!?と宣伝している人がいる印象です。 | ||
+ | |||
+ | 私にはJavascriptよりも100倍難しそうに感じますが、とりあえず、『関数型言語』というものに興味を持ってしまったので、しばらく触ってみたいと思います。 | ||
===== 開発環境 ===== | ===== 開発環境 ===== | ||
< | < | ||
行 31: | 行 38: | ||
{{: | {{: | ||
- | ===== Windows10にVisualStudioCodeでElm開発環境構築手順 ===== | + | ===== Windows10にVisualStudioCodeでElm0.19開発環境構築手順 ===== |
VisualStudioCodeとnode.jsはインストール済みとします。 | VisualStudioCodeとnode.jsはインストール済みとします。 | ||
行 90: | 行 97: | ||
{{: | {{: | ||
+ | Elm ソースファイルの作成と編集 | ||
+ | src/ | ||
+ | {{: | ||
+ | 以下を入力。 | ||
+ | < | ||
+ | main = div [] [ text "Hello world!" | ||
+ | </ | ||
+ | {{: | ||
+ | この状態で、Alt + Shift + F を押す。 | ||
+ | すると、ワンテンポ遅れて、いきなり、以下のように変化します。 | ||
+ | {{: | ||
+ | これは、elm-formatにより、elmのコードが自動的にフォーマットされたからだそうです。 | ||
+ | まあ、たしかに、importとか勝手にやってほしいですよね。 | ||
+ | 次に、Ctrl+S で保存します。 | ||
+ | すると、今回も、ワンテンポ遅れて、以下のように赤い波線が出てきます。 | ||
+ | {{: | ||
+ | これは、コンパイルエラーを示しているそうです。 | ||
+ | main = の上の行で、impと打ち込んでからEnterを押すと、以下のようになります。 | ||
+ | {{: | ||
- | ===== リンク ===== | + | {{: |
+ | |||
+ | NameのところをHtmlに置き換えて保存します。 | ||
+ | すると、divとtextの下に出ていた赤い波線が消えます。 | ||
+ | {{: | ||
+ | |||
+ | これで、コンパイルエラーのないコードができたらしいです。 | ||
+ | |||
+ | ==== Elmコードの実行 ==== | ||
+ | VisualStudioCode上で、 | ||
+ | -Ctrl+Shift+Pで、コマンドパレットを表示し | ||
+ | -elm reactor startと打ち込んで、Enterを押します | ||
+ | |||
+ | {{: | ||
+ | {{: | ||
+ | |||
+ | 以下のような画面になります。 | ||
+ | {{: | ||
+ | |||
+ | このとき、WEBサーバが起動しているらしく、ChromeなどのWEBブラウザで、 | ||
+ | |||
+ | http:// | ||
+ | |||
+ | にアクセスすると、以下のような表示が出ます。 | ||
+ | |||
+ | {{: | ||
+ | |||
+ | これで、Hello Worldが終了です。 | ||
+ | |||
+ | ちなみに、このページのソースコードを表示すると、わけのわからないことになっています。 | ||
+ | |||
+ | {{: | ||
+ | |||
+ | なお、サーバを、止めるときは、以下の手順となります。 | ||
+ | |||
+ | VisualStudioCode上で、 | ||
+ | -Ctrl+Shift+Pで、コマンドパレットを表示し | ||
+ | -elm reactor stopと打ち込んで、Enterを押します | ||
+ | |||
+ | ==== Elmコードの実行 その2 ==== | ||
+ | こちらの方が簡単です。 | ||
+ | |||
+ | VisualStudioCode上でCtrl+@で、コマンドプロンプトを表示し、以下を入力 | ||
+ | |||
+ | < | ||
+ | elm reactor | ||
+ | </ | ||
+ | |||
+ | その後、ChromeなどのWEBブラウザで、 | ||
+ | |||
+ | http:// | ||
+ | |||
+ | にアクセスします。 | ||
+ | |||
+ | サーバを止めるときは、コマンドプロンプト上で、Ctrl+C を押します。 | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ===== Elmリンク ===== | ||
+ | |||
+ | https:// | ||
+ | @kawauso7 | ||
+ | 2018年12月05日に更新 | ||
+ | Elm3(予備) Advent Calendar 20183日目 | ||
+ | Elm を実戦投入した話 2018年冬 | ||
+ | |||
+ | https:// | ||
+ | Elm入門ハンズオン | ||
+ | |||
+ | https:// | ||
+ | 初心者Elmerがクソアプリを作った時に気付いたこと | ||
+ | |||
+ | |||
+ | https:// | ||
+ | ElmのHello Worldができるまで (2018 10/25) | ||
+ | →Atomでの環境構築の方法 | ||
+ | |||
+ | https:// | ||
+ | {{: | ||
+ | |||
+ | http:// | ||
+ | {{: | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ===== Elmリンク2 ===== | ||
[[z_blog: | [[z_blog: | ||
+ | [[z_blog: | ||
+ | |||
+ | http:// | ||
+ | 『基礎からわかるElm』を写経してみる(2)Elmアーキテクチャ | ||
+ | 2019年3月23日 | ||
+ | |||
+ | http:// | ||
+ | 『基礎からわかるElm』を写経してみる(1)Html | ||
+ | 2019年3月23日 | ||
+ | |||
+ | http:// | ||
+ | Elm入門ハンズオンを読んでみる(1) | ||
+ | 2019年3月22日 | ||
+ | |||
+ | http:// | ||
+ | Windows8.1ProにVisualStudioCodeでElm0.19開発環境を構築 | ||
+ | 2019年3月22日 | ||
+ | |||
+ | http:// | ||
+ | Elmを試してみる | ||
+ | 2019年3月21日 | ||
+ | ===== Elm0.19でお勧めの本 ===== | ||
+ | 2019年3月時点で、elmに関する本は以下の1冊のみです。 | ||
+ | |||
+ | ちょっと読んだ感じですと、まず、環境構築でつまずきかけ、しかも何だか難しくてチンプンカンプンに感じましたが、これから、繰り返し写経していきたいと思います。 | ||
+ | |||
+ | ソースコード | ||
+ | https:// | ||
+ | < | ||
+ | <iframe style=" | ||
+ | </ | ||
z_blog/2019/190319_elm2.1553009665.txt.gz · 最終更新: 2019/03/19 by adash333