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
Why Elixir
Search
mururu
March 07, 2014
Programming
9
2k
Why Elixir
歌舞伎座.tech#3「Real World Erlang/OTP」
mururu
March 07, 2014
Tweet
Share
More Decks by mururu
See All by mururu
Go で始める将棋 AI
mururu
1
2.8k
カンム と React Native / Kanmu React Native
mururu
0
3.6k
Go製のネットワーククライアントに対する継続的 / Fuzzing for network client in Go
mururu
4
2.7k
カンムでの React Native の 歴史と現在 / React Native in Kanmu
mururu
1
480
Building FIDO2 server in Go
mururu
2
6.9k
「ElixirがリアルタイムWebに強い」 というのは本当か?
mururu
13
6.5k
Erlang: Improve the performance of cryptographic functions by AES-NI
mururu
1
240
Treasure Data Summer Intern 2015 Final Report
mururu
0
3.1k
Elixir 1.0
mururu
3
850
Other Decks in Programming
See All in Programming
バリデーションライブラリ徹底比較
nayuta999999
1
460
少数精鋭エンジニアがフルスタック力を磨く理由 -そしてAI時代へ-
rebase_engineering
0
130
RubyKaigi Hack Space in Tokyo & 函館最速 "予習" 会 / RubyKaigi Hack Space in Tokyo & The Fastest Briefing of RubyKaigi 2026 in Hakodate
moznion
1
130
コンポーネントライブラリで実現する、アクセシビリティの正しい実装パターン
schktjm
1
670
Proxmoxをまとめて管理できるコンソール作ってみました
karugamo
1
430
Cloudflare Realtime と Workers でつくるサーバーレス WebRTC
nekoya3
0
250
ユーザーにサブドメインの ECサイトを提供したい (あるいは) 2026年函館で一番熱くなるかもしれない言語の話
uvb_76
0
180
TVer iOSチームの共通認識の作り方 - Findy Job LT iOSアプリ開発の裏側 開発組織が向き合う課題とこれから
techtver
PRO
0
720
バランスを見極めよう!実装の意味を明示するための型定義 TSKaigi 2025 Day2 (5/24)
whatasoda
2
780
抽象データ型について学んだ
ryounasso
0
210
PT AI без купюр
v0lka
0
200
TypeScript LSP の今までとこれから
quramy
0
140
Featured
See All Featured
Become a Pro
speakerdeck
PRO
28
5.4k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
850
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
Balancing Empowerment & Direction
lara
1
90
Building an army of robots
kneath
306
45k
It's Worth the Effort
3n
184
28k
The World Runs on Bad Software
bkeepers
PRO
68
11k
Embracing the Ebb and Flow
colly
85
4.7k
Why You Should Never Use an ORM
jnunemaker
PRO
56
9.4k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.5k
The Power of CSS Pseudo Elements
geoffreycrofte
76
5.8k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.7k
Transcript
ͳͥ&MJYJSͳͷ͔ Վب࠲UFDIʮ3FBM8PSME&SMBOH051ʯ !NVSVSVSVSV 143݄13༵
ࣗݾհ UXJUUFS!NVSVSVSVSV HJUIVC!NVSVSV 143݄13༵
3FBM8PSME 143݄13༵
3FBM8PSME 143݄13༵
3FBM8PSME 143݄13༵
143݄13༵
“Elixir is a functional, meta-programming aware language built on top
of the Erlang VM. It is a dynamic language with flexible syntax and macro support that leverages Erlang's abilities to build concurrent, distributed and fault-tolerant applications with hot code upgrades.” 143݄13༵
&SMBOH7. 143݄13༵
&SMBOH7. 051 143݄13༵
&MJYJS&SMBOH JOUFHFS MJTU< >< > UVQMF\ ^\ ^ BUPNBUPNBUPN TUSJOHlBCDzlBCDz
CJUTUSJOH DIBSMJTUbBCD`lBCDz Ϧςϥϧ 143݄13༵
&MJYJS EFGNPEVMF)FMMPEP EFGIFMMP EP*0QVUT l)FMMP 8PSMEz FOE &SMBOH NPEVMF
IFMMP FYQPSU <XPSME> XPSME JPGPSNBU l)FMMP 8PSMEz Ϟδϡʔϧఆٛ 143݄13༵
NFUBQSPHSBNJOH 143݄13༵
NPEVMF IFMMP FYQPSU <XPSME> XPSME JPGPSNBU )FMMP
&SMBOH 143݄13༵
EFGNPEVMF)FMMPEP EFGXPSMEEP *0QVUT)FMMP &SMBOH FOE FOE 143݄13༵
EFGNPEVMF)FMMPEP *0QVUT)FMMP &MJYJS EFGXPSMEEP *0QVUT)FMMP &SMBOH FOE FOE 143݄13༵
FMJYJSDIFMMPFY )FMMP &MJYJS FMJYJSF)FMMPXPSME )FMMP &SMBOH 143݄13༵
&WFSZUIJOHJTBOFYQSFTTJPO 143݄13༵
EFGNPEVMF4USJOH6OJDPEFEP DPEFT&OVNSFEVDF'JMFTUSFBN TQFDJBM@QBUI DPEFT GO MJOF BDD <DPEFQPJOU
MPXFS UJUMF VQQFS @DPNNFOU>CJOBSZTQMJU MJOF <HMPCBM> LFZUP@CJOBSZ DPEFQPJOU MJTUTLFZTUPSF LFZ BDD \LFZ UP@CJOBSZ VQQFS UP@CJOBSZ MPXFS UP@CJOBSZ UJUMF ^ FOE MD\DPEFQPJOU @VQQFS MPXFS @UJUMF^JOMJTUDPEFT MPXFSMPXFSDPEFQPJOUEP EFGQEP@EPXODBTF VORVPUF DPEFQPJOU SFTU EP VORVPUF CJOBSZCJO@UP@MJTU MPXFS EPXODBTF SFTU FOE FOE FOE &NCFEEFEEBUBCBTF 143݄13༵
JFY EFGNPEVMF)FMMPEP EFGXPSMEEP *0QVUT)FMMP XPSME
FOE FOE JFY )FMMPXPSME )FMMP XPSME %FpOFNPEVMFTPOTIFMM 143݄13༵
NBDSPT 143݄13༵
\OBNF NFUBEBUB BSHT^ 143݄13༵
JFYRVPUFEPNBY \NBY <> < >^ 143݄13༵
EFGNBDSPVOMFTT DPOEJUJPO PQUT EP RVPUFEP JGVORVPUF DPOEJUJPO VORVPUF PQUT FOE
FOE VOMFTTBWBJMBCMF EP FOE JGBWBJMBCMF EP FOE 143݄13༵
%PNBJO4QFDJpD-BOHVBHF 143݄13༵
IBOEMF (&5 <VTFST *%> 3FR HFUVTFSTJEEP FOE
143݄13༵
RVFSZGSPNVJO6TFS XIFSFVTDPSFPSVTDPSF TFMFDUV 3FQPBMM RVFSZ 143݄13༵
EFGNPEVMF4BNQMF5FTUEP VTF&Y6OJU$BTF UFTUFRVBMEP BTTFSUBCD FOE UFTUSFHFYNBUDIEP BTTFSUBCDddS FOE FOE 143݄13༵
EFGNBDSPBTTFSU \ @ <MFGU SJHIU>^ EP FOE EFGNBDSPBTTFSU \d
@ <MFGU SJHIU>^ EP FOE 143݄13༵
UFTUSFHFY 4BNQMF5FTU &Y6OJU&YQFDUBUJPO&SSPS FYQFDUFEBCD UPNBUDI d dS
BUUFTUFY UFTUFRVBM 4BNQMF5FTU &Y6OJU&YQFDUBUJPO&SSPS FYQFDUFEBCD UPCFFRVBMUP BUUFTUFY 143݄13༵
lCFDBVTFZPVDBO FMJNJOBUFBOZUIJOHUIBUT UFEJPVTUISPVHINBDSPTz 3JDI)JDLFZ 143݄13༵
QSPUPDPMT 143݄13༵
add get delete List Array Stack &YQSFTTJPO1SPCMFN 143݄13༵
add get delete List Array Stack YourList &YQSFTTJPO1SPCMFN 001 143݄13༵
add get delete size List Array Stack &YQSFTTJPO1SPCMFN '1 143݄13༵
NPEVMF KTPO FODPEF -JTU XIFOJT@MJTU -JTU FODPEF
.BQ XIFOJT@NBQ .BQ FODPEF *OUFHFS XIFOJT@JOUFHFS *OUFHFS 143݄13༵
EFGQSPUPDPM+40/EP EFGFODPEF UFSN FOE EFpNQM+40/ GPS-JTUEP EFGFODPEF MJTU FOE
EFpNQM+40/ GPS.BQEP EFGFODPEF NBQ FOE EFpNQM+40/ GPS*OUFHFSEP EFGFODPEF JOUFHFS FOE 143݄13༵
&OVNFSBCMF &OVNNBQ< > GO Y Y FOE
&OVNNBQ GO Y Y FOE &OVNNBQ:PVS-JTU< > GO Y Y FOE 143݄13༵
*OTQFDU EJDUGSPN@MJTU <\GPP ^> \EJDU
\<> <> <> <> <> <> <> <> <> <> <> <> <> <> <> <>^ \\<> <> <> <> <> <> <> <> <> <> <> <> <> <> <> <<GPPc>>^^^ JFY )BTI%JDUOFX <GPP> )BTI%JDU<GPP> JFY %BUF5JNFOPX 5 143݄13༵
0UIFSUPQJDT 143݄13༵
TUBOEBSEMJCSBSZ ɾQSPUPDPMT ɾVOJDPEF ɾ[FSPCBTFEJOEFYJOH ɾNPSFVOJGPSN 143݄13༵
JFY JFY U&OVN !UZQFU &OVNFSBCMFU !UZQFFMFNFOU BOZ !UZQFJOEFY OPO@OFH@JOUFHFS
!UZQFEFGBVMU BOZ 143݄13༵
JFY T&OVNNBQ !TQFDNBQ U FMFNFOU BOZ <> JFY
143݄13༵
JFY I&OVNNBQ EFGNBQ DPMMFDUJPO GVO 3FUVSOTBOFXDPMMFDUJPO XIFSFFBDIJUFNJTUIFSFTVMUPG JOWPLJOHGVOPOFBDI
DPSSFTQPOEJOHJUFNPGDPMMFDUJPO 'PSEJDUT UIFGVODUJPOFYQFDUTBLFZWBMVFUVQMF &YBNQMFT ᴺJFY&OVNNBQ < > GO Y Y FOE ᴺ< > JFY 143݄13༵
NJY ɾHFOBSBUFQSPKFDU ɾNBOBHFEFQFOEFODJFT ɾNBOBHFUBTLT ɾJOTQJSFECZ-FJOJOHFO 143݄13༵
·ͱΊ ɾ&SMBOH051͕͍͢͝ ɾNFUBQSPHSBNNJOH ɾQSPUPDPMT 143݄13༵
͓͠·͍ 143݄13༵