Erlang書きはじめた

by @dekokun on 2015/04/26 22:26

Tagged as: Erlang.

すごいErlang本を1ヶ月くらいかけてひと通り読み終わったので、何か作らにゃいかんと思っていたら社内でWebSocketのリアルタイムほげほげ系開発ツールの話が出てきたため、一旦作ってみるかという感じでまずはWebSocketを使って云々なやつをさっきから作り始めた。

まだ1時間くらいの進捗だけ(というよりは、ほとんど何も進んでいない)だが、かなり雑にハマったことを以下に記述する。

参考にしたもの

すごいErlang本、すごいHaskell本と比べても非常に情報量が多く、実践的な内容が大量にあって素敵だった。

ハマった点

初めてのErlangなのですが、なんかよくわからんところでよくコケている

参考URL(Erlang WebサーバCowboy - WebSocket編)にweb socketのサンプルの作り方があったのでそれ通りプログラムを作成したんだけど、makeしても参考URLに記載の実行コマンド、./_rel/message_wall_release/bin/message_wall_releaseなぞというファイルは存在しない。何が起きているのかよくわからんかったのですが、しょうがないので以下のように起動していた。 erl -pa message_wall/ebin message_wall/deps/*/ebin -> {ok, _} = application:ensure_all_started(message_wall).

なお、最初はmessage_wallディレクトリ内で上記erlコマンドを実行したりしていたんだけど、“priv_dirが存在しねぇぜ”エラー(Can’t resolve the priv_dir of application message_wall)が出てて、そういえばディレクトリ構造大切だったねと思い出して一つ上のディレクトリで起動したらうまくいった。デバッグの過程でcode:priv_dir/1を覚えた。

後でMakefile(erlang.mk)みてたらbootstrap-relターゲットがあったのでmake bootstrap-rel打ってみたらmakeで./_rel/message_wall_release/bin/message_wall_release ができてた。めでたい。

感想

この雑な記事、感想も何もないのですが、まぁ、上記「WebSocketのリアルタイムほげほげ系開発ツールの話」が続く限りは今後も制作過程を書いていけたらと思います。多分。

ここ数週間は、は会社でひたすらChefのcookbookを書いてはサーバを構築していて、それも非常に楽しいのですがプログラムを書くのも好きです(まだこの段階では写経をして動く段階まで持っていっただけだけど)

comments powered by Disqus