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
84
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 World is a Network (and We Are Just Nodes)
whatyouhide
0
150
BEAM: The Perfect Fit for Networks
whatyouhide
1
140
Update from the Elixir team - 2022
whatyouhide
0
340
Testing Asynchronous OTP
whatyouhide
0
460
Elixir Sightseeing Tour
whatyouhide
0
350
Mint - Disrupting HTTP clients
whatyouhide
0
210
BEAM Architecture Handbook
whatyouhide
7
2.6k
The Evolution of a Language
whatyouhide
0
120
Elixir - functional, concurrent, distributed programming for the rest of us
whatyouhide
2
290
Other Decks in Programming
See All in Programming
Rubyとクリエイティブコーディングの輪の広がり / The Growing Circle of Ruby and Creative Coding
chobishiba
1
220
Swiftで高速フーリエ変換してオーディオビジュアライザーを作る / iOSDC Japan 2024 Day1 Track D
kyome22
2
460
2024 컴포즈 정원사
jisungbin
0
140
開発を加速する共有Swift Package実践
elmetal
PRO
0
300
Desafios e Lições Aprendidas na Migração de Monólitos para Microsserviços em Java
jessilyneh
2
130
Prompt Cachingは本当に効果的なのか検証してみた.pdf
ttnyt8701
0
250
Ebitengineの1vs1ゲーム WebRTCの活用
ponyo877
0
330
rbs-inlineを導入してYARDからRBSに移行する
euglena1215
1
200
初めてのiOS関連GitHub ActionsをMarketplaceに公開するまでの実録
konifar
3
200
どうしてこうなった?から理解するActive Recordの関連の裏側
willnet
5
510
長期運用プロダクトの開発速度を維持し続けるためのリファクタリング実践例
wataruss
8
2.5k
LangGraphでのHuman-in-the-Loopの実装
os1ma
3
550
Featured
See All Featured
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
29
2.5k
How GitHub (no longer) Works
holman
309
140k
YesSQL, Process and Tooling at Scale
rocio
167
14k
The Mythical Team-Month
searls
218
43k
Typedesign – Prime Four
hannesfritz
38
2.3k
In The Pink: A Labor of Love
frogandcode
139
22k
Bootstrapping a Software Product
garrettdimon
PRO
304
110k
Designing for humans not robots
tammielis
248
25k
Designing with Data
zakiwarfel
98
5k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
28
2.2k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
165
48k
Infographics Made Easy
chrislema
239
18k
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