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
Rust for Gophers
Search
mishudark
November 07, 2019
Programming
0
160
Rust for Gophers
mishudark
November 07, 2019
Tweet
Share
Other Decks in Programming
See All in Programming
C++20 射影変換
faithandbrave
0
530
ruby.wasmで多人数リアルタイム通信ゲームを作ろう
lnit
2
270
git worktree × Claude Code × MCP ~生成AI時代の並列開発フロー~
hisuzuya
1
480
XP, Testing and ninja testing
m_seki
3
200
GraphRAGの仕組みまるわかり
tosuri13
8
480
High-Level Programming Languages in AI Era -Human Thought and Mind-
hayat01sh1da
PRO
0
390
プロダクト志向なエンジニアがもう一歩先の価値を目指すために意識したこと
nealle
0
110
設計やレビューに悩んでいるPHPerに贈る、クリーンなオブジェクト設計の指針たち
panda_program
6
1.4k
deno-redisの紹介とJSRパッケージの運用について (toranoana.deno #21)
uki00a
0
150
Enterprise Web App. Development (2): Version Control Tool Training Ver. 5.1
knakagawa
1
120
Azure AI Foundryではじめてのマルチエージェントワークフロー
seosoft
0
130
関数型まつりレポート for JuliaTokai #22
antimon2
0
150
Featured
See All Featured
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
281
13k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
46
9.6k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
17
940
GitHub's CSS Performance
jonrohan
1031
460k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.8k
Scaling GitHub
holman
459
140k
Fireside Chat
paigeccino
37
3.5k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
5.9k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3k
Git: the NoSQL Database
bkeepers
PRO
430
65k
Building Adaptive Systems
keathley
43
2.6k
Making Projects Easy
brettharned
116
6.3k
Transcript
For Gophers Rust @mishudark
No GC, but automatic memory management Memory
It is fast but*
Systems programming A replacement for C / C++
Safe
- Dangling pointers - Double Free - Null pointers
Josh Triplett(Intel) Rust is the future of systems programming, C
is the new Assembly
Josh Triplett(Intel) Achieving parity with C is exactly what got
me involved in Rust
None
First a bit of history
Graydon Hoare(2006)
Mozilla investment(2009)
Rust version(2015)
Rust version(2018)
How it looks like?
Immutable by default
The compiler hates to me
It is happy again
Dangling pointers
Dangling pointer
Ok, the compiler again …
Aha moment
Enums
Enums, values and generics!
Pattern matching
if Some…
match
Async / Await
Would you use it to solve a CC?
I’m very smart
ok, no
well
We have generics
Join5
Join4
Join3
We have MACROS
Evil magic code
Lifetimes
Easy right?
Not so fast
‘a
BOX, ARC, RC… :(
Onboarding time
Borrowing model
3-6 months full-time
None
Conclusions
- Low level - GC is not an option -
C interop - As safe as Go
Questions
Thanks @mishudark