Elixir

Elixir - Agent

Agent Agent - Elixir Agentは状態を保持します。 # 空のリストを初期状態として生成 {:ok, agent} = Agent.start_link(fn -> [] end) # 現在の状態(list)を引数として新しい状態を生成する Agent.update(agent, fn list -> ["eggs" | list] end) # 現在の状…

Elixir - Process

Getting StartedrのProcessについてサクッとまとめました。 Processes - Elixir spawn ... 子プロセスを生成する spawn_link ... 子プロセスを生成する(例外発生時に共倒れ) send, receive ... プロセス間のメッセージ送受信 Task ... spawnのラップ、結果…

Elixirのパターンマッチ

JSONを取得するサンプル 適当なAPIサーバーを立ててJSONを取得してみます。 APIサーバー http://localhost:3000/capitals.jsonにアクセスすると首都一覧を返します。 const express = require('express') const app = express() app.get('/capitals.json', (…

ElixirでWebスクレイピング

Webページの取得にHTTPoison, HTMLのパースにFlokiを利用します。 HTTPoison GitHub - edgurgel/httpoison: Yet Another HTTP client for Elixir powered by hackney Floki GitHub - philss/floki: Floki is a simple HTML parser that enables search for n…

Hello, Mix!

Mixとは Elixirのプロジェクト管理ツールです。 プロジェクトの作成 $ mix new hello_world * creating README.md * creating .gitignore * creating mix.exs * creating config * creating config/config.exs * creating lib * creating lib/hello_world.ex…