Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
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
1
600
Dart Side of the Moon
lvivski
June 02, 2013
Tweet
Share
More Decks by lvivski
See All by lvivski
Behind the Scenes: Dart
lvivski
0
620
Real Life Dart
lvivski
0
690
Other Decks in Science
See All in Science
会社でMLモデルを作るとは @電気通信大学 データアントレプレナーフェロープログラム
yuto16
1
450
防災デジタル分野での官民共創の取り組み (1)防災DX官民共創をどう進めるか
ditccsugii
0
430
HajimetenoLT vol.17
hashimoto_kei
1
140
あなたに水耕栽培を愛していないとは言わせない
mutsumix
1
140
academist Prize 4期生 研究トーク延長戦!「美は世界を救う」っていうけど、どうやって?
jimpe_hitsuwari
0
460
Cross-Media Technologies, Information Science and Human-Information Interaction
signer
PRO
3
31k
動的トリートメント・レジームを推定するDynTxRegimeパッケージ
saltcooky12
0
240
ド文系だった私が、 KaggleのNCAAコンペでソロ金取れるまで
wakamatsu_takumu
2
1.7k
コミュニティサイエンスの実践@日本認知科学会2025
hayataka88
0
110
先端因果推論特別研究チームの研究構想と 人間とAIが協働する自律因果探索の展望
sshimizu2006
3
590
機械学習 - 決定木からはじめる機械学習
trycycle
PRO
0
1.2k
Optimization of the Tournament Format for the Nationwide High School Kyudo Competition in Japan
konakalab
0
140
Featured
See All Featured
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
120
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Everyday Curiosity
cassininazir
0
110
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
190
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.1k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
1.9k
Tell your own story through comics
letsgokoyo
0
750
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.5k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
Paper Plane (Part 1)
katiecoart
PRO
0
1.9k
New Earth Scene 8
popppiees
0
1.2k
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