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
510
Your HTTP API is not RESTful
jakobmattsson
3
580
Creating JavaScript modules
jakobmattsson
1
400
Automated CSS Testing - jsday Verona
jakobmattsson
1
530
Promise to test it - jsday Verona
jakobmattsson
2
610
Hyper Island - MVP
jakobmattsson
0
190
How to *actually* use promises in JavaScript
jakobmattsson
7
2.6k
Automated CSS Testing - Not Just a Myth (JSConf.Asia)
jakobmattsson
6
610
Other Decks in Programming
See All in Programming
AI時代のUIはどこへ行く?
yusukebe
18
9.2k
🔨 小さなビルドシステムを作る
momeemt
4
690
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
430
RDoc meets YARD
okuramasafumi
4
170
testingを眺める
matumoto
1
140
ユーザーも開発者も悩ませない TV アプリ開発 ~Compose の内部実装から学ぶフォーカス制御~
taked137
0
190
FindyにおけるTakumi活用と脆弱性管理のこれから
rvirus0817
0
550
機能追加とリーダー業務の類似性
rinchoku
2
1.3k
デザイナーが Androidエンジニアに 挑戦してみた
874wokiite
0
570
API Platform 4.2: Redefining API Development
soyuka
0
240
実用的なGOCACHEPROG実装をするために / golang.tokyo #40
mazrean
1
300
Kiroで始めるAI-DLC
kaonash
2
630
Featured
See All Featured
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.6k
For a Future-Friendly Web
brad_frost
180
9.9k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.5k
Java REST API Framework Comparison - PWX 2021
mraible
33
8.8k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
3k
The Cult of Friendly URLs
andyhume
79
6.6k
We Have a Design System, Now What?
morganepeng
53
7.8k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
1.1k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
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?