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
Dart Side of the Moon
Search
lvivski
June 02, 2013
Science
620
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Dart Side of the Moon
lvivski
June 02, 2013
More Decks by lvivski
See All by lvivski
Behind the Scenes: Dart
lvivski
0
640
Real Life Dart
lvivski
0
720
Other Decks in Science
See All in Science
CVPR2026_VGGTとその仲間たち
mickey_0226
0
1k
次代のデータサイエンティストへ~スキルチェックリスト、タスクリスト更新~
datascientistsociety
PRO
3
47k
機械学習 - K-means & 階層的クラスタリング
trycycle
PRO
0
1.8k
社内で活躍できるデータサイエンティストになるために
aikinohara
1
110
チュートリアル:世界モデル
hf149
0
2k
Understanding CVP Waveforms: Interpretation and Clinical Implications in Anesthesiology
taka88
0
690
Conwayの法則を"ちゃんと"使うために — 原典でConwayは何を言っていたのか
bonotake
10
6k
人生を変えた一冊「独学大全」のはなし / Self-study ENCYCLOPEDIA: The Book Which Change My Life #独学大全 #EM推し本
expajp
0
180
データベース12: 正規化(2/2) - データ従属性に基づく正規化
trycycle
PRO
0
1.5k
Physical AIを支えるWeights & Biases
olachinkei
1
430
データベース09: 実体関連モデル上の一貫性制約
trycycle
PRO
0
1.6k
先端因果推論特別研究チームの研究構想と 人間とAIが協働する自律因果探索の展望
sshimizu2006
3
960
Featured
See All Featured
The Spectacular Lies of Maps
axbom
PRO
1
870
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
250
Deep Space Network (abreviated)
tonyrice
0
240
What's in a price? How to price your products and services
michaelherold
247
13k
Abbi's Birthday
coloredviolet
3
8.8k
Color Theory Basics | Prateek | Gurzu
gurzu
0
400
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
340
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Code Reviewing Like a Champion
maltzj
528
40k
Crafting Experiences
bethany
1
230
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
880
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
420
Transcript
Yehor Lvivski @lvivski
The Dart side of the Moon
None
class-based single inheritance object-oriented
History
Oct 11, 2011 Apr 16, 2013 Summer 2013
M1, July 2012 • No explicit interfaces • No `+` on Strings
• Cascades `o..method()`
M2, December 2012 • Better Dart2js • PUB • Better libraries API
M3, February 2013 • Streams API • Lazy Iterators
M4, April 2013 Stability!
Who’s behind?
None
None
Why?
Performance
main(){}! Tree shaking Classes and Interfaces Optional types Concurrency Operator
overloading Optional and Named arguments Lightweight syntax
It’s not a syntax sugar
Standalone VM Browser integrated VM dart2js Compiler
None
How it works
None
None
None
Is it even possible?
Generated code is faster, than handwritten. Prototype-less code is faster,
than Prototype chains. Inlined functions, are faster too ;)
None
Laziness
None
Laziness • map()! • where() (filter analogue) • expand()!
Streams Reactive Programming
Streams • emit a repeating series of events (such as
messages, file data, user clicks) • single- or multi-subscriber • methods to take partial data (first, take, skip...) • check data (contains, any, every) • transform
Streams are Everywhere • Iterators (List, Queue, Set) • IO (File, HTTP)
• Events
Infrastructure
Editors
None
None
Package manager
None
Components
Dart Web UI Package
None
Demo time!
Links • h'p://www.dartlang.org • h'p://github.com/dart-‐lang/web-‐ui • h'p://github.com/lvivski
– speaker, start, hart, gloss, quart, archer Thanks