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 1.0 Launch Party Kyiv and Lviv
Search
Андрей Листочкин (Andrey Listochkin)
May 15, 2015
Programming
0
270
Rust 1.0 Launch Party Kyiv and Lviv
Андрей Листочкин (Andrey Listochkin)
May 15, 2015
Tweet
Share
More Decks by Андрей Листочкин (Andrey Listochkin)
See All by Андрей Листочкин (Andrey Listochkin)
Everybody Stand Back! I Know Regular Expressions
listochkin
0
100
Command-line scripting with Rust. Wait, what?!
listochkin
0
220
Server Memory - BuildStuff Ukraine 2019
listochkin
0
23
Server Memory - Chernivtsi JS 2019
listochkin
1
83
10 Years Later
listochkin
0
330
Managing Managers - DevTalks iHUB
listochkin
0
34
Time, Numbers, Text
listochkin
1
460
Software Licensing: A Minefield Guide
listochkin
0
110
We Make Bots. For Real
listochkin
0
340
Other Decks in Programming
See All in Programming
見た目から始める生産性向上
ikumatadokoro
10
1.4k
Introducing Kotlin Multiplatform in an existing mobile app - Workshop Edition | AndroidMakers Paris
prof18
0
150
VS Code をプロダクトにどう取り込むか
onomax
1
700
Amazon SQSコンシューマー疎結合への旅 - 出張! #DevelopersIO IT技術ブログの中の人が語る勉強会 #3
quiver
0
310
Git Lint
bkuhlmann
4
760
Ruby Pattern Matching
bkuhlmann
0
930
Node.js v22 で変わること
yosuke_furukawa
PRO
11
3.9k
Going beyond Apache Parquet's default settings
xhochy
0
130
サイコロで理解する統計的仮説検定の考え方
tatamiya
4
1k
新宿ダンジョンを可視化してみた
satoshi7190
3
390
Apache Hive 4 on Treasure Data
ryukobayashi
1
420
Three ways to use AI on Android: The Good, the Bad and the Ugly
marxallski
0
110
Featured
See All Featured
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
117
18k
Fashionably flexible responsive web design (full day workshop)
malarkey
398
65k
The Mythical Team-Month
searls
216
42k
Creatively Recalculating Your Daily Design Routine
revolveconf
211
11k
GraphQLの誤解/rethinking-graphql
sonatard
55
9.3k
Producing Creativity
orderedlist
PRO
338
39k
Into the Great Unknown - MozCon
thekraken
14
1k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
352
28k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
126
32k
5 minutes of I Can Smell Your CMS
philhawksworth
199
19k
Six Lessons from altMBA
skipperchong
22
3k
Automating Front-end Workflow
addyosmani
1357
200k
Transcript
Rust 1.0
@RustUkraine https://gitter.im/dev-ua/rust
@listochkin
2006 Graydon Hoare
2009 Mozilla Research
2011 Self-hosted OCaml
2012 Release 0.1
Dec 2013 Rust the game
Jan 2015 1.0-alpha
Apr 2015 1.0-beta
May 15, 2015 1.0
What is Rust?
Systems Language
Compiles to a binary
.a .so .dylib .dll .exe
No Runtime No Garbage Collection
C => Rust => C
C Rust
C Extensions Rust Extensions
Java .NET Ruby Python Node iOS Android
C C++
Databases Internet of Things Games
Mozilla Servo
browser layout engine highly parallel
Modern Platform
modules crates
Cargo
dependency hell
A (0.1.x) -> D (12.5.x) B (0.0.4)
A (0.1.3) B (0.0.4) C (1.0.3)
crates.io > 2000
project generator test runner incremental builds
llvm x64 ARM
Modern Language
type inference immutability pattern matching algebraic datatypes
OOP
Struct Trait (+inheritance) Generics
Memory Model
No GC
RAII on Steroids
Ownership Borrowing Lifetimes
Concurrency
Threads Mutexes Arc
Missing Pieces
i18n HTTP SQL
Rust vs ...
Rust vs C++
Rust richer language safety guaranties modularity better performance
richer tooling C++
Rust vs Ocaml/Haskell
Rust multiparadigm manual memory management purely functional GC
Richer Concurrency Haskell
Rust vs Go
Rust Libraries Richness Native threads + anything No
GC Cargo Binaries only* Simplicity coroutines channels + syntax GC only go get* http Go
Rust vs Go very different
Rust + Ruby/Go/Haskell/C++
1.0
You program won’t break
None
Ubuntu Chrome Firefox
LLVM frontend unoptimized
tools
Travis CI Nitrous multirust
What should you write in Rust?
Mainstream Developer
CLI utils Extensions Background Jobs
Web Frameworks Web Apps Web APIs
Node/Go Ømq Rust
Mozilla OpenDNS Tilde
@RustUkraine https://gitter.im/dev-ua/rust