Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Beyond JavaScript
Search
Jakob Mattsson
October 01, 2011
Programming
2
1.2k
Beyond JavaScript
Given at JSConfEU 2011
Jakob Mattsson
October 01, 2011
Tweet
Share
More Decks by Jakob Mattsson
See All by Jakob Mattsson
Forgotten Funky Functions
jakobmattsson
1
440
Forgotten Funky Functions
jakobmattsson
0
520
Your HTTP API is not RESTful
jakobmattsson
3
590
Creating JavaScript modules
jakobmattsson
1
410
Automated CSS Testing - jsday Verona
jakobmattsson
1
550
Promise to test it - jsday Verona
jakobmattsson
2
620
Hyper Island - MVP
jakobmattsson
0
210
How to *actually* use promises in JavaScript
jakobmattsson
7
2.7k
Automated CSS Testing - Not Just a Myth (JSConf.Asia)
jakobmattsson
6
630
Other Decks in Programming
See All in Programming
テストやOSS開発に役立つSetup PHP Action
matsuo_atsushi
0
150
DevFest Android in Korea 2025 - 개발자 커뮤니티를 통해 얻는 가치
wisemuji
0
140
How Software Deployment tools have changed in the past 20 years
geshan
0
29k
20 years of Symfony, what's next?
fabpot
2
360
AIコーディングエージェント(Gemini)
kondai24
0
220
FluorTracer / RayTracingCamp11
kugimasa
0
230
tparseでgo testの出力を見やすくする
utgwkk
2
220
sbt 2
xuwei_k
0
300
俺流レスポンシブコーディング 2025
tak_dcxi
14
8.7k
S3 VectorsとStrands Agentsを利用したAgentic RAGシステムの構築
tosuri13
6
310
実はマルチモーダルだった。ブラウザの組み込みAI🧠でWebの未来を感じてみよう #jsfes #gemini
n0bisuke2
2
1k
Findy AI+の開発、運用におけるMCP活用事例
starfish719
0
350
Featured
See All Featured
Mobile First: as difficult as doing things right
swwweet
225
10k
Building an army of robots
kneath
306
46k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
The Invisible Side of Design
smashingmag
302
51k
Music & Morning Musume
bryan
46
7k
Build The Right Thing And Hit Your Dates
maggiecrowley
38
3k
Why Our Code Smells
bkeepers
PRO
340
57k
BBQ
matthewcrist
89
9.9k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.3k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.1k
Agile that works and the tools we love
rasmusluckow
331
21k
Transcript
Beyond JavaScript @jakobmattsson jakobmattsson.se
Everything is fucking dynamic
JavaScript is not JS
Static checking was good - Casting was evil
New perspectives
Combine the best of two worlds!
It failed
Open up a new set of possibilities
The dynamic languages disappoints
list.select { |x| x > 0 } filter (> 0)
list list.filter(function(x) { return x > 0 })
&& ||
EVERYTHING IS AN OBJECT!!!
What can Blub do?
What can Blub do?
What can Blub do? What can’t Blub do?
It’s not about a particular solution
It’s about doing as little as possible
A dynamic language should be moldable
The best part
But this conference is about JavaScript!
None
1. Full of stupid shit
1. Full of stupid shit 2. Platform for everything
1. Full of stupid shit 2. Platform for everything 3.
Has amazing ideas
Call by name
&& = lazyfunction(a, b) { if (execute(a)) { if (execute(b))
{ return true; } } return false; }; Call by name
Operators on steroids
v = a + b unless x > y Operators
on steroids
v = a + b unless x > y =>
(x > y).unless(v = a + b) Operators on steroids
Syntax unification
list.filter(> 0) Syntax unification
msg = { name: ’<’, arguments: [ { value: 0
} ] }; Syntax unification
filter = lazyfunction(msg) { var r = []; this.forEach(function(e) {
if (e.send(msg)) { r.push(e); } }); return r; } Syntax unification
We are not there yet
Safety? Performance?
What can Blub do? @jakobmattsson jakobmattsson.se What can’t Blub do?