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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
lvivski
June 02, 2013
Science
620
1
Share
Dart Side of the Moon
lvivski
June 02, 2013
More Decks by lvivski
See All by lvivski
Behind the Scenes: Dart
lvivski
0
630
Real Life Dart
lvivski
0
710
Other Decks in Science
See All in Science
HajimetenoLT vol.17
hashimoto_kei
1
220
コミュニティサイエンスの実践@日本認知科学会2025
hayataka88
0
150
Endel Tulvingとエピソード記憶
rmaruy
0
110
人生を変えた一冊「独学大全」のはなし / Self-study ENCYCLOPEDIA: The Book Which Change My Life #独学大全 #EM推し本
expajp
0
150
Rashomon at the Sound: Reconstructing all possible paleoearthquake histories in the Puget Lowland through topological search
cossatot
0
910
MATSUO Makiko
genomethica
0
140
検索と推論タスクに関する論文の紹介
ynakano
1
190
People who frequently use ChatGPT for writing tasks are accurate and robust detectors of AI-generated text
rudorudo11
0
230
YouTubeにおける撤回論文の参照実態 / metascience-meetup2026
corgies
3
260
【RSJ2025】PAMIQ Core: リアルタイム継続学習のための⾮同期推論・学習フレームワーク
gesonanko
0
820
AI(人工知能)の過去・現在・未来 —AIは人間を超えるのか—
tagtag
PRO
1
270
Amusing Abliteration
ianozsvald
1
160
Featured
See All Featured
BBQ
matthewcrist
89
10k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
170
GraphQLとの向き合い方2022年版
quramy
50
15k
It's Worth the Effort
3n
188
29k
How to Talk to Developers About Accessibility
jct
2
190
Test your architecture with Archunit
thirion
1
2.2k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.5k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.2k
Designing Powerful Visuals for Engaging Learning
tmiket
1
360
HDC tutorial
michielstock
2
650
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.4k
We Are The Robots
honzajavorek
0
220
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