Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
上から見るか下から見るか.pdf
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Junnichi Kitta
September 29, 2019
1.1k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
上から見るか下から見るか.pdf
Junnichi Kitta
September 29, 2019
More Decks by Junnichi Kitta
See All by Junnichi Kitta
SREってなんだろう
hayabusa333
0
230
ポストモーテムから振り返る
hayabusa333
0
190
Elixirでやってきたこと
hayabusa333
0
1.7k
APIサーバとしてのCowboy
hayabusa333
1
1.4k
CowboyとPhoenixの速度比較
hayabusa333
1
1.9k
E言語スタック
hayabusa333
0
570
Featured
See All Featured
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
10k
エンジニアに許された特別な時間の終わり
watany
108
250k
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
760
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.6k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
330
Crafting Experiences
bethany
1
240
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
450
Making Projects Easy
brettharned
120
6.7k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
420
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
3
1.1k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6k
AI: The stuff that nobody shows you
jnunemaker
PRO
9
890
Transcript
上から見るか下から見るか
自己紹介 TwitterID = hayabusa333 |> heart = [カーネル, GC, Erlang,
Elixir] |> jobs = 株式会社ドリコム |> position = [Joel教,翔鶴瑞鶴仲良し姉妹同 盟,Elixir雑魚勢]
上から見るか下から見るか
Enum / Keyword / List / Map / MapSet /
Range / Stream / File / IO / Path / Port / System / Agent / Application / Config / DynamicSupervisor / GenServer / Node / Process / Registry / Supervisor / Task
機能ごとに見るのであれば それぞれのソースコードを見 ていけば良いかと
ではElixirの上から見ていくに は?
. ├── Makefile ├── bin # 実行ファイル ├── lib │
├── eex │ ├── elixir │ │ ├── Emakefile # Erlang用のMakefile │ │ ├── ebin │ │ ├── generate_app.escript # elixir.app.srcを作成する用のテンプレート │ │ ├── lib # カーネル/モジュール │ │ ├── mix.exs │ │ ├── src # コンパイラ │ │ ├── test │ ├── ex_unit │ ├── iex │ ├── logger │ └── mix
{application, elixir, [{description, "elixir"}, {vsn, '$will-be-replaced'}, {modules, '$will-be-replaced'}, {registered, [elixir_sup,
elixir_config, elixir_code_server]}, {applications, [kernel,stdlib,compiler]}, {mod, {elixir,[]}}, {env, [{check_endianness, true}, {ansi_enabled, false}, {time_zone_database, 'Elixir.Calendar.UTCOnlyTimeZoneDatabase'}]} ]}.
registered:アプリケーション内に登録された名前のリスト applications:Elixirが依存しているアプリケーションのリスト mod:アプリケーションビヘイビアを使って、アプリケーションの コールバックを定義 env:アプリケーションの設定用に使用されるキーと値のリスト
default: compile compile: erlang $(APP) elixir erlang: $(PARSER) $(Q) if
[ ! -f $(APP) ]; then $(call CHECK_ERLANG_RELEASE); fi $(Q) cd lib/elixir && mkdir -p ebin && erl -make $(APP): lib/elixir/src/elixir.app.src lib/elixir/ebin VERSION $(GENERATE_APP) $(Q) $(GENERATE_APP) $< $@ $(VERSION)
まとめ ・基本的にはElixirはElixirのコードで記載されている ・Elixirを読むのには、Erlangの力もいる場合もある ・Erlangに関してはErlangのドキュメントを読むのが良い ・本が欲しければすごいErlangゆかいに学ぼう!を読もう ・基本的にはネット上に情報がないつらみ
ご静聴 ありがとうございました