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
1
560
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
590
Real Life Dart
lvivski
0
660
Other Decks in Science
See All in Science
局所保存性・相似変換対称性を満たす機械学習モデルによる数値流体力学
yellowshippo
1
190
01_篠原弘道_SIPガバニングボード座長_ポスコロSIPへの期待.pdf
sip3ristex
0
250
Factorized Diffusion: Perceptual Illusions by Noise Decomposition
tomoaki0705
0
350
02_西村訓弘_プログラムディレクター_人口減少を機にひらく未来社会.pdf
sip3ristex
0
230
統計学入門講座 第1回スライド
techmathproject
0
260
最適化超入門
tkm2261
15
3.8k
(論文読み)贈り物の交換による地位の競争と社会構造の変化 - 文化人類学への統計物理学的アプローチ -
__ymgc__
1
190
20分で分かる Human-in-the-Loop 機械学習におけるアノテーションとヒューマンコンピューターインタラクションの真髄
hurutoriya
5
2.9k
Pericarditis Comic
camkdraws
0
1.5k
07_浮世満理子_アイディア高等学院学院長_一般社団法人全国心理業連合会代表理事_紹介資料.pdf
sip3ristex
0
240
How were Quaternion discovered
kinakomoti321
2
1.2k
Visual Analytics for R&D Intelligence @Funding the Commons & DeSci Tokyo 2024
hayataka88
0
150
Featured
See All Featured
Java REST API Framework Comparison - PWX 2021
mraible
29
8.5k
Gamification - CAS2011
davidbonilla
80
5.2k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
14
1.1k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
12k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
60k
Building Adaptive Systems
keathley
40
2.5k
Fireside Chat
paigeccino
37
3.3k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.3k
Optimizing for Happiness
mojombo
377
70k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
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