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
470
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
510
Real Life Dart
lvivski
0
560
Other Decks in Science
See All in Science
Презентация программы бакалавриата СПбГУ "Искусственный интеллект и наука о данных"
dscs
0
110
Direct Preference Optimization
zchenry
0
130
『データ可視化学入門』を PythonからRに翻訳した話
bob3bob3
1
360
大規模画像テキストデータのフィルタリング手法の紹介
lyakaap
5
1.1k
Introduction to Graph Neural Networks
joisino
4
1.4k
AI科学の何が“哲学”の問題になるのか ~問いマッピングの試み~
rmaruy
1
1.2k
効果検証入門に物申してみた_JapanR_2023
s1ok69oo
6
4.5k
O ChatGPT e outras IAs vão mudar toda a pesquisa científica
cardososampaio
0
170
Pandas 2 vs Polars vs Dask (PyDataGlobal 2023 December)
ianozsvald
0
430
量子コンピュータとデータサイエンティスト
fuyu_quant0
0
130
救急外来でのめまい診療_中枢性めまいを見逃さない!
psasa
0
160
汎用原子シミュレータMatlantis のご紹介
matlantis
0
130
Featured
See All Featured
The Invisible Customer
myddelton
114
12k
Testing 201, or: Great Expectations
jmmastey
28
6.3k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
125
32k
Done Done
chrislema
178
15k
Design by the Numbers
sachag
274
18k
Faster Mobile Websites
deanohume
299
30k
GraphQLとの向き合い方2022年版
quramy
32
12k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
19
1.7k
The Illustrated Children's Guide to Kubernetes
chrisshort
31
46k
Facilitating Awesome Meetings
lara
42
5.6k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
2
1.3k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
244
20k
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