雪が降って寒い一日でした。
いつも通りプログラミングElixirの続きをやってLTを聞いてお酒を飲んで満足度の高い時間を過ごすことができました。
プログラミングElixir
第13章
- GitHubのissueをテーブル形式で表示するプログラム
- プロセスにおけるデータ変換をそれぞれ関数と見なして設計する方針
mix
コマンドでElixirプロジェクトを管理することができるmix <task>
- 自分でmixのタスクを書くこともできる
mix help <task>
mix new issues
コマンドを実行すると以下のようになる
$ mix new issues * creating README.md * creating .gitignore * creating mix.exs * creating config * creating config/config.exs * creating lib * creating lib/issues.ex * creating test * creating test/test_helper.exs * creating test/issues_test.exs Your Mix project was created successfully. You can use "mix" to compile it, test it, and more: cd issues mix test Run "mix help" for more commands.
mix run
でコンパイルをしてプログラムを実行するmix.exs
のdeps
内配列に依存関係を追加していく- hex.pm で検索できる
mix deps.get
で依存関係をインストールする
- mix.exsの中で実行するアプリケーションを設定できる
- 今回は
:httpoison
を追加した
- 今回は
mixでバコっとプロジェクトのひな形作れるのいいねえ。標準でコマンドが用意されてるのもまたいい。
— ニボシーニョ (@TAKAyuki_atkwsk) 2018年2月17日
後から気付いたんですが、前回は第11章やっていたので第12章飛ばしてましたw
プロジェクトのexファイルではインストールした外部ライブラリを明示的にインポートしなくても使えるの不思議だなあと思いました。Rubyでいうところの require
書かなくてもなんで呼び出せるのかが分かっていない。。
時間が来てしまったので13章の半分くらいで終了。
あと、今回は余裕があれば発表しようと思ってたんですが間に合わず。ErlPortというライブラリがあってこれを使うとRubyやPythonのコードをElixirから接続できるようになるとのこと。これを使ってElixirとRubyを行ったり来たりというのをやってみようと思ってました。これは来月発表したいです。
懇親会
前回丸二が満席で入れなかったので満を持して予約。0次会も含めてだいぶ飲みましたね。
なんかの拍子で中谷宇吉郎の話になってそういえば今展覧会やってるなあってのを思い出した。銀座でやってて残念ながら行けなさそう。
来月ももくもく会です。