Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
上から見るか下から見るか.pdf
Search
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
200
Elixirでやってきたこと
hayabusa333
0
1.7k
APIサーバとしてのCowboy
hayabusa333
1
1.4k
CowboyとPhoenixの速度比較
hayabusa333
1
1.9k
E言語スタック
hayabusa333
0
580
Featured
See All Featured
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
770
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.6k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
300
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
120
120k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.9k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
700
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
2
2.9k
Bootstrapping a Software Product
garrettdimon
PRO
306
120k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
Google's AI Overviews - The New Search
badams
0
1.6k
First, design no harm
axbom
PRO
2
1.3k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
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ゆかいに学ぼう!を読もう ・基本的にはネット上に情報がないつらみ
ご静聴 ありがとうございました