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
CREってこういうこと? 体験入社 - 提案資料 - / what-is-cre-trial-employment
shinden
1
530
Goのmultiple errorsについて (2024年4月版)
syumai
4
1.2k
Native Federation: The Future of Micro Frontends in Angular
manfredsteyer
PRO
0
110
スクラムガイドのスプリントレトロスペクティブを改めて読みかえしてみた / Re-reading the Sprint Retrospective Section in the Scrum Guide
mackey0225
3
490
VS Code をプロダクトにどう取り込むか
onomax
1
750
Exploring the Implementation of “t.Run”, “t.Parallel”, and “t.Cleanup”
akarin
1
130
DMMプラットフォームがTiDB Cloudを採用した背景
pospome
9
4.3k
AWS CDKコントリビュートTIPS / aws-cdk-contribution-tips
gotok365
4
400
検証も兼ねて個人開発でHonoとかと向き合った話
hanetsuki
1
1.3k
Node.js v22 で変わること
yosuke_furukawa
PRO
12
4k
Polars入門
daikikatsuragawa
1
180
GitLab CI/CD で C#/WPFアプリケーションのテストとインストーラーのビルド・デプロイを自動化する
hacarus
0
360
Featured
See All Featured
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
34
6k
Debugging Ruby Performance
tmm1
70
11k
What the flash - Photography Introduction
edds
64
11k
The Pragmatic Product Professional
lauravandoore
26
5.8k
A Philosophy of Restraint
colly
197
16k
Building Better People: How to give real-time feedback that sticks.
wjessup
356
18k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
34
8.9k
Product Roadmaps are Hard
iamctodd
45
9.7k
Infographics Made Easy
chrislema
238
18k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
21
1.9k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
8
3.4k
Optimising Largest Contentful Paint
csswizardry
13
2.4k
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