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
Writing Command Line Applications in Elixir
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
James Smith
July 25, 2014
Programming
1.6k
7
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Writing Command Line Applications in Elixir
Using Elixir to solve small problems.
James Smith
July 25, 2014
Other Decks in Programming
See All in Programming
リアルな遅延を測る仕様
kota_yata
1
120
170k Jobs a Day on GKE: Scaling Mercari's CI Platform - and What's Next for AI-Native Development
junyaokabe
0
120
Hono + Inertia + React で LP を構築した話
oukayuka
2
110
バグを直したら useEffect が消えた
colorful12
3
660
進化を続けるGo toolsの現在地 / The Current State of Ever-Evolving Go Tools
hond0413
0
250
FastAPI の並行処理モデルを完全に理解する
hoto17296
3
930
Go を使い始めて 2 ヶ月の学び / My first two months with Go
contour_gara
0
320
Dockerfile CMD for Node.js
grazie1999
0
110
自動化したのに回らないテスト運用の壁ーAI時代の品質責任と生産性
mfunaki
1
150
Go言語とトイモデルで学ぶTransformerの気持ち / fukuokago23-transformer
monochromegane
0
190
AIと壁打ちしながら進めるコスト管理
fufuhu
1
1.2k
Flow は今どうなっているか
mizdra
PRO
0
660
Featured
See All Featured
YesSQL, Process and Tooling at Scale
rocio
174
15k
Heart Work Chapter 1 - Part 1
lfama
PRO
8
36k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
370
Test your architecture with Archunit
thirion
2
2.4k
A Modern Web Designer's Workflow
chriscoyier
698
190k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
630
Mind Mapping
helmedeiros
PRO
1
320
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.2k
Information Architects: The Missing Link in Design Systems
soysaucechin
1
1.1k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
2
400
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
470
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
420
Transcript
HELLO SEND(AUDIENCE, {:GREETING, “HELLO!”})
None
None
–interested programmer “I'd love to check out Elixir but I
don't really have a problem that is big enough that Elixir is well suited for.”
None
MASSIVELY CONCURRENT DISTRIBUTED FAULT TOLERANT WEB SCALE FUNCTIONAL
PIPES |> PATTERN MATCHING |> MESSAGE PASSING |> IMMUTABILITY |>
=> {:OK, “ ☺”} ELIXIR OFFERS A DIFFERENT WAY TO THINK ABOUT AND SOLVE PROBLEMS OF ANY SIZE. !
None
WRITING COMMANDLINE APPS WITH ELIXIR
None
None
MIX
DEPENDENCIES Hex package Git/SCM Path Dependency tasks mix deps: “lists
all deps and their status” mix deps.get “Get non installed dependencies” mix deps.compile mix deps.update mix deps.clean “Remove all dependency files” mix deps.unlock “Unlock dependencies”
None
UMBRELLA PROJECTS • Run tasks across apps • Run all
your tests for apps in app_path • Run Applications in dependent order…
MIX TASKS
RUNNING OUR APPS MIX ESCRIPT.BUILD
None
None
None
BASIC IO
TESTING IO
IO.ANSI • escape_fragment(string, emit \\ terminal()) • “%{clear, home, green,
bright} Welcome” • IO.red() IO.green() etc… • home() send the cursor home
FILES AND PATHS • File.open • File.close • File.read •
binread/write utf8 and IO module • File.read vs File.read! • Path.join and Path.expand • Path.wildcard
PORT
BASIC USAGE
DEMO
SCALING UP COMMAND LINE APPS WITH TASKS & AGENTS
TASKS
AGENTS a simple abstraction around state
DEMO DEMO
THANK YOU