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
Beyond JavaScript
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Jakob Mattsson
October 01, 2011
Programming
1.2k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Beyond JavaScript
Given at JSConfEU 2011
Jakob Mattsson
October 01, 2011
More Decks by Jakob Mattsson
See All by Jakob Mattsson
Forgotten Funky Functions
jakobmattsson
1
490
Forgotten Funky Functions
jakobmattsson
0
570
Your HTTP API is not RESTful
jakobmattsson
3
620
Creating JavaScript modules
jakobmattsson
1
450
Automated CSS Testing - jsday Verona
jakobmattsson
1
590
Promise to test it - jsday Verona
jakobmattsson
2
670
Hyper Island - MVP
jakobmattsson
0
250
How to *actually* use promises in JavaScript
jakobmattsson
7
2.7k
Automated CSS Testing - Not Just a Myth (JSConf.Asia)
jakobmattsson
6
690
Other Decks in Programming
See All in Programming
Hello, Hiroshima Geospatial Data! — Exploring DoboX with Python
ra0kley
0
170
PyConJP2026_wat_Python × Signal Processing: How to Draw Pictures with Sound Using Spectrogram Art
wat
0
660
AIと壁打ちしながら進めるコスト管理
fufuhu
2
1.9k
PHPプロジェクトの結合バランスを可視化する #php_night
kajitack
0
210
承認済みなのに差戻しできてしまうバグ、型で潰せます
shinchit
0
140
私のClaude Code活用法 (個人開発編) - PHPerKaigi mini #4(2026/08/24)
panda_program
1
210
MIZARU@SPAJAM2026 第二回予選
1901drama
0
100
AIは賢い。でも実行環境は? CLIおじさんがAI時代に伝えたいこと ~ CLIおじさんがAI時代に伝えたいこと ~
curekoshimizu
1
140
[PyCon KR 2026] More Variants, More Diversity for AI Accelerators
achimnol
0
130
typoなんかねぇよ
raspython3
0
660
異なる設計思想のフレームワークを経験して得た学び
amekuhideki
2
1.5k
初心者DevRelとして参加者だった私が、DevRel Talks!#2に登壇するまでにしてきたこと
sokohirai
0
330
Featured
See All Featured
For a Future-Friendly Web
brad_frost
183
10k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
490
Building an army of robots
kneath
306
46k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
2.7k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
890
Rebuilding a faster, lazier Slack
samanthasiow
85
9.6k
The Limits of Empathy - UXLibs8
cassininazir
1
640
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
800
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.6k
How GitHub (no longer) Works
holman
316
150k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.8k
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?