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
Update from the Elixir Core Team - 2017
Search
Andrea Leopardi
June 09, 2017
Programming
0
120
Update from the Elixir Core Team - 2017
Andrea Leopardi
June 09, 2017
Tweet
Share
More Decks by Andrea Leopardi
See All by Andrea Leopardi
The Umbrella and the Range
whatyouhide
0
36
gen_statem - OTP's Unsung Hero
whatyouhide
2
300
The World is a Network (and We Are Just Nodes)
whatyouhide
1
240
BEAM: The Perfect Fit for Networks
whatyouhide
1
230
Update from the Elixir team - 2022
whatyouhide
0
440
Testing Asynchronous OTP
whatyouhide
1
550
Elixir Sightseeing Tour
whatyouhide
0
460
Mint - Disrupting HTTP clients
whatyouhide
0
290
BEAM Architecture Handbook
whatyouhide
7
2.9k
Other Decks in Programming
See All in Programming
Rubyと楽しいをつくる / Creating joy with Ruby
chobishiba
0
180
OCaml 5でモダンな並列プログラミングを Enjoyしよう!
haochenx
0
160
OSSとなったswift-buildで Xcodeのビルドを差し替えられるため 自分でXcodeを直せる時代になっている ダイアモンド問題編
yimajo
3
640
並行開発のためのコードレビュー
miyukiw
2
1.8k
iOSアプリでフロントエンドと仲良くする
ryunakayama
0
110
AIに仕事を丸投げしたら、本当に楽になれるのか
dip_tech
PRO
0
150
CSC307 Lecture 09
javiergs
PRO
1
850
15年続くIoTサービスのSREエンジニアが挑む分散トレーシング導入
melonps
2
250
日本だけで解禁されているアプリ起動の方法
ryunakayama
0
350
AIコーディングの理想と現実 2026 | AI Coding: Expectations vs. Reality 2026
tomohisa
0
260
AI によるインシデント初動調査の自動化を行う AI インシデントコマンダーを作った話
azukiazusa1
1
790
CSC307 Lecture 10
javiergs
PRO
1
680
Featured
See All Featured
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
110
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.2k
sira's awesome portfolio website redesign presentation
elsirapls
0
160
Believing is Seeing
oripsolob
1
65
Building AI with AI
inesmontani
PRO
1
730
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.4k
RailsConf 2023
tenderlove
30
1.4k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
330
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4k
The #1 spot is gone: here's how to win anyway
tamaranovitovic
2
960
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
420
Transcript
Update from the Elixir team elixir-lang.org
Elixir v1.0 Sep 2014 > 180 contributors
Elixir v1.4 Jan 2017 > 520 contributors
Release every 6 months v1.5 → mid 2017 v1.6 →
beg 2018 ... → ...
IMPROVEMENTS IN v1.5
UTF-8 atoms :""
Contributed back to OTP
test "こんにちは世界" do assert :こんにちは世界 end
josé = "wat" josé #=> "wat" UTF-8 VARIABLES http://erlang.org/pipermail/erlang-questions/2012-October/069820.html
Exception.blame/3
None
None
None
GenStage + Flow
A B C stages of computation with backpressure GenStage
parallel computations on collections Flow File.stream!("path/to/some/file") |> Flow.from_enumerable() |> Flow.flat_map(&String.split(&1,
" ")) |> Flow.partition() |> Flow.reduce(fn -> %{} end, fn word, acc -> Map.update(acc, word, 1, &(&1 + 1)) end) |> Enum.to_list()
None
http://bit.ly/genstage
Many small improvements CHANGELOG.md
FUTURE
Deprecate tuple calls
{List, []}.first() List.first({List, []})
Dynamic supervisor
simple_one_for_one confusing/mixed API documentation
simple_one_for_one confusing/mixed API documentation DynamicSupervisor
RESEARCH PROJECTS
Data streams + Property testing
test "starts_with?/2" do assert for s1 <- Data.string(), s2 <-
Data.string() do String.starts_with?(s1 <> s2, s1) end end
Google Summer of Code
ExFormat def foo ( a, b ) do a+ b
end def foo(a, b) do a + b end
Language Server Protocol http://langserver.org
GenHTTP Functional, flexible HTTP client
github.com/elixir-lang/elixir
elixir-lang.org