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
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
420
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
640
Other Decks in Programming
See All in Programming
TerraformとStrands AgentsでAmazon Bedrock AgentCoreのSSO認証付きエージェントを量産しよう!
neruneruo
4
2.1k
TestingOsaka6_Ozono
o3
0
230
生成AI時代を勝ち抜くエンジニア組織マネジメント
coconala_engineer
0
36k
re:Invent 2025 のイケてるサービスを紹介する
maroon1st
0
160
안드로이드 9년차 개발자, 프론트엔드 주니어로 커리어 리셋하기
maryang
1
150
Patterns of Patterns
denyspoltorak
0
400
モデル駆動設計をやってみようワークショップ開催報告(Modeling Forum2025) / model driven design workshop report
haru860
0
290
認証・認可の基本を学ぼう後編
kouyuume
0
260
GoLab2025 Recap
kuro_kurorrr
0
790
PostgreSQLで手軽にDuckDBを使う!DuckDB&pg_duckdb入門/osc25hi-duckdb
takahashiikki
0
220
AtCoder Conference 2025「LLM時代のAHC」
imjk
2
610
Go コードベースの構成と AI コンテキスト定義
andpad
0
150
Featured
See All Featured
Information Architects: The Missing Link in Design Systems
soysaucechin
0
720
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
96
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
0
100
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.1k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
33
ラッコキーワード サービス紹介資料
rakko
0
1.9M
Unsuck your backbone
ammeep
671
58k
How to build a perfect <img>
jonoalderson
0
4.8k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
30
Tell your own story through comics
letsgokoyo
0
770
Claude Code のすすめ
schroneko
67
210k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
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?