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
430
Forgotten Funky Functions
jakobmattsson
0
520
Your HTTP API is not RESTful
jakobmattsson
3
580
Creating JavaScript modules
jakobmattsson
1
410
Automated CSS Testing - jsday Verona
jakobmattsson
1
530
Promise to test it - jsday Verona
jakobmattsson
2
620
Hyper Island - MVP
jakobmattsson
0
200
How to *actually* use promises in JavaScript
jakobmattsson
7
2.7k
Automated CSS Testing - Not Just a Myth (JSConf.Asia)
jakobmattsson
6
620
Other Decks in Programming
See All in Programming
NIKKEI Tech Talk#38
cipepser
0
360
pnpm に provenance のダウングレード を検出する PR を出してみた
ryo_manba
1
180
Kotlinで実装するCPU/GPU 「協調的」パフォーマンス管理
matuyuhi
0
260
EMこそClaude Codeでコード調査しよう
shibayu36
0
560
퇴근 후 1억이 거래되는 서비스 만들기 | 내가 AI를 사용하는 방법
maryang
2
380
ドメイン駆動設計のエッセンス
masuda220
PRO
15
7.4k
Developer Joy - The New Paradigm
hollycummins
1
400
CSC509 Lecture 08
javiergs
PRO
0
280
MCPサーバー「モディフィウス」で変更容易性の向上をスケールする / modifius
minodriven
4
620
AIのバカさ加減に怒る前にやっておくこと
blueeventhorizon
0
140
Introduce Hono CLI
yusukebe
6
3.3k
エンジニアに事業やプロダクトを理解してもらうためにやってること
murabayashi
0
120
Featured
See All Featured
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.2k
Build The Right Thing And Hit Your Dates
maggiecrowley
38
2.9k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.3k
Faster Mobile Websites
deanohume
310
31k
Statistics for Hackers
jakevdp
799
220k
The Cult of Friendly URLs
andyhume
79
6.7k
Documentation Writing (for coders)
carmenintech
76
5.1k
Why You Should Never Use an ORM
jnunemaker
PRO
60
9.6k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.7k
Fireside Chat
paigeccino
41
3.7k
Making Projects Easy
brettharned
120
6.4k
What's in a price? How to price your products and services
michaelherold
246
12k
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?