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
Lo que la cafeína le hizo a JS
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Sergio Arbeo
January 28, 2015
Programming
250
1
Share
Lo que la cafeína le hizo a JS
Edición extendida y revisada dada en MadridJS. Enero 2015.
Sergio Arbeo
January 28, 2015
More Decks by Sergio Arbeo
See All by Sergio Arbeo
Testing sin Dogmas
serabe
0
260
Decorating JavaScript - source{d} edition
serabe
1
170
Componentes: DD
serabe
0
390
Introducción a JSONAPI
serabe
1
200
Bienvenidos a Ember Madrid
serabe
2
230
Lo que la cafeína le hizo a JS
serabe
1
3k
Taller de Introducción a Ember.JS
serabe
1
220
Generadores en JavaScript
serabe
1
540
El diablo está en los detalles
serabe
0
700
Other Decks in Programming
See All in Programming
エージェンティックRAGにAWSで入門しよう!
har1101
7
990
AIエージェントの隔離技術の徹底比較
kawayu
0
460
不変条件と整合性境界—ビジネスが決める設計判断と実現パターン / Invariants and Consistency Boundaries
nrslib
13
3.4k
今さら聞けないCancellationToken
htkym
0
220
ADKを使って簡単にAIエージェントを作ってみよう
k1mu21
0
220
Signal Forms: Beyond the Basics @ngBaguette 2026 in Paris
manfredsteyer
PRO
0
220
Datadog × OpenTelemetry 入門と実践のあいだ
kn_to_maxpno
1
140
タクシーアプリ『GO』の バックエンド開発のおける AI利活用と若者のすべて
pyama86
3
1.9k
メソッドのジェネリクスでGoの夢は広がるか? / Kyoto.go #65
utgwkk
3
530
3Dシーンの圧縮
fadis
1
640
作って学ぶ、 JSX (TSX) ランタイムの基本
syumai
7
1.5k
Spec-Driven Development with AI-Agents: From High-Level Requirements to Working Software
antonarhipov
2
450
Featured
See All Featured
Paper Plane
katiecoart
PRO
1
51k
Evolving SEO for Evolving Search Engines
ryanjones
0
210
The Curious Case for Waylosing
cassininazir
1
370
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.9k
Building Flexible Design Systems
yeseniaperezcruz
330
40k
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
720
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
180
Prompt Engineering for Job Search
mfonobong
0
330
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.7k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
1
340
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
61
44k
エンジニアに許された特別な時間の終わり
watany
107
250k
Transcript
Sergio Arbeo {Back,Front}-end developer at codecantor @Serabe Lo que la
cafeína le hizo a JS Historia de un despecho transpilado
Sergio Arbeo {Back,Front}-end developer at codecantor @Serabe Lo que la
cafeína le hizo a JS Historia de un despecho transpilado Extended version, just not Peter- Jackson-extended
Sergio Arbeo {Back,Front}-end developer at codecantor @Serabe Lo que la
cafeína le hizo a JS Historia de un despecho transpilado Extended version, just not Peter- Jackson-extended You know what I mean
None
CODECANTOR
/Ember-js-Madrid
I loved CoffeeScript
I loved CoffeeScript
CoffeeScript V JavaScript
CoffeeScript V ES5
CoffeeScript ES6 V
WHY?
WHY? Implicit returns
WHY? Implicit returns No named functions
WHY? Implicit returns No named functions Strange regexes
WHY? Implicit returns No named functions Strange regexes Significant
whitespace
WHY? Implicit returns No named functions Strange regexes Significant
whitespace Generators
Ember.JS
None
None
None
ES6
Destructuring
None
None
None
None
NESTABLE
None
None
Destructuring DE
None
Arrays too
None
None
None
None
NESTABLE TOO
MODULES
None
None
None
None
None
None
Named exports
None
None
None
Ember-‐CLI
let / const
let • The new var. • Block scope.
• No hoisRng.
let • The new var. • Block scope.
• No hoisRng. Actually, it does hoist, but raises a syntactic error at runtime when used before being asigned.
Symbols Interlude
Symbol New primiRve type that serves as unique IDs.
Symbol
CLASSES
CLASSES The Good Parts
METHODS
None
STRING TEMPLATES Interlude
None
Computed properRes
None
None
None
None
SYMBOLS Interlude
Symbol Can be used as property names. keys
None
Some symbols • Symbol.hasInstance • Symbol.isConcatSpreadable •
Symbol.isRegExp • Symbol.toPrimiRve • Symbol.toStringTag • Symbol.unscopables • Symbol.iterator
{G,S}ETTER
None
None
FUNCTIONS
SPREAD OP
None
None
None
None
None
None
1 -‐> 2 -‐> 3
1 -‐> 2 -‐> 3 14
None
Symbol.iterator 12.2.4.2
None
DEFAULT
None
None
fn
None
None
Most important => fn feature LEXICAL THIS
None
No Rme for…
CLASSES The not-that-good Parts
GENERATOR
COMPREHENSIONS
async/await ES7
NAMED EXPORTS
# LITERALS
# LITERALS BINARY: 0b101
# LITERALS BINARY: 0b101 OCTAL: 0o67
# LITERALS
APIs
QUESTIONS?
Thank you! @Serabe
[email protected]