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
James Smith
July 25, 2014
Programming
7
1.5k
Writing Command Line Applications in Elixir
Using Elixir to solve small problems.
James Smith
July 25, 2014
Tweet
Share
Other Decks in Programming
See All in Programming
LLMで複雑な検索条件アセットから脱却する!! 生成的検索インタフェースの設計論
po3rin
4
1k
SwiftUIで本格音ゲー実装してみた
hypebeans
0
530
TestingOsaka6_Ozono
o3
0
220
ゲームの物理 剛体編
fadis
0
390
AIエージェントの設計で注意するべきポイント6選
har1101
6
2.7k
開発に寄りそう自動テストの実現
goyoki
2
1.6k
まだ間に合う!Claude Code元年をふりかえる
nogu66
5
920
Kotlin Multiplatform Meetup - Compose Multiplatform 외부 의존성 아키텍처 설계부터 운영까지
wisemuji
0
150
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
510
0→1 フロントエンド開発 Tips🚀 #レバテックMeetup
bengo4com
0
440
AI前提で考えるiOSアプリのモダナイズ設計
yuukiw00w
0
210
AI時代を生き抜く 新卒エンジニアの生きる道
coconala_engineer
1
480
Featured
See All Featured
Visualization
eitanlees
150
16k
Mind Mapping
helmedeiros
PRO
0
42
Product Roadmaps are Hard
iamctodd
PRO
55
12k
Git: the NoSQL Database
bkeepers
PRO
432
66k
Odyssey Design
rkendrick25
PRO
0
450
ラッコキーワード サービス紹介資料
rakko
0
1.9M
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
32
Site-Speed That Sticks
csswizardry
13
1k
The SEO Collaboration Effect
kristinabergwall1
0
320
Optimizing for Happiness
mojombo
379
70k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
350
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
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