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
240
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
250
Decorating JavaScript - source{d} edition
serabe
1
160
Componentes: DD
serabe
0
390
Introducción a JSONAPI
serabe
1
200
Bienvenidos a Ember Madrid
serabe
2
220
Lo que la cafeína le hizo a JS
serabe
1
3k
Taller de Introducción a Ember.JS
serabe
1
210
Generadores en JavaScript
serabe
1
530
El diablo está en los detalles
serabe
0
690
Other Decks in Programming
See All in Programming
Codex CLIのSubagentsによる並列API実装 / Parallel API Implementation with Codex CLI Subagents
takatty
2
770
The free-lunch guide to idea circularity
hollycummins
0
400
安いハードウェアでVulkan
fadis
1
870
今からFlash開発できるわけないじゃん、ムリムリ! (※ムリじゃなかった!?)
arkw
0
180
Feature Toggle は捨てやすく使おう
gennei
0
400
事業会社でのセキュリティ長期インターンについて
masachikaura
0
210
L’IA au service des devs : Anatomie d'un assistant de Code Review
toham
0
190
RSAが破られる前に知っておきたい 耐量子計算機暗号(PQC)入門 / Intro to PQC: Preparing for the Post-RSA Era
mackey0225
3
110
Codex CLI でつくる、Issue から merge までの開発フロー
amata1219
0
280
仕様漏れ実装漏れをなくすトレーサビリティAI基盤のご紹介
orgachem
PRO
8
4.1k
AI時代のシステム設計:ドメインモデルで変更しやすさを守る設計戦略
masuda220
PRO
6
1.2k
AI-DLC 入門 〜AIコーディングの本質は「コード」ではなく「構造」〜 / Introduction to AI-DLC: The Essence of AI Coding Is Not “Code” but “Structure”
seike460
PRO
0
170
Featured
See All Featured
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
250
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
210
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
140
Rails Girls Zürich Keynote
gr2m
96
14k
My Coaching Mixtape
mlcsv
0
92
The Spectacular Lies of Maps
axbom
PRO
1
670
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
99
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.9k
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
220
Design in an AI World
tapps
0
190
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.9k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
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]