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
CoffeeScript
Search
Jeroen Rosenberg
November 30, 2012
Programming
2
310
CoffeeScript
How about a nice BIG cup of CoffeeScript
Jeroen Rosenberg
November 30, 2012
Tweet
Share
More Decks by Jeroen Rosenberg
See All by Jeroen Rosenberg
Cooking your Ravioli "al dente" with Hexagonal Architecture
jeroenr
0
29
Apache Solr: Lessons Learned
jeroenr
2
96
Websocket on Rails
jeroenr
4
570
Stop thinking, go faster
jeroenr
2
210
Git
jeroenr
3
450
Provisioning with Vagrant & Puppet
jeroenr
5
820
Monit
jeroenr
2
230
Other Decks in Programming
See All in Programming
Djangoにおける複数ユーザー種別認証の設計アプローチ@DjangoCongress JP 2025
delhi09
PRO
4
520
AIレビュー導入によるCIツールとの共存と最適化
kamo26sima
1
1.2k
⚪⚪の⚪⚪をSwiftUIで再現す る
u503
0
140
Go 1.24でジェネリックになった型エイリアスの紹介
syumai
2
310
Ça bouge du côté des animations CSS !
goetter
2
170
Datadog DBMでなにができる? JDDUG Meetup#7
nealle
0
160
未経験でSRE、はじめました! 組織を支える役割と軌跡
curekoshimizu
1
220
推しメソッドsource_locationのしくみを探る - はじめてRubyのコードを読んでみた
nobu09
2
370
ABEMA iOS 大規模プロジェクトにおける段階的な技術刷新 / ABEMA iOS Technology Upgrade
akkyie
1
260
Serverless Rust: Your Low-Risk Entry Point to Rust in Production (and the benefits are huge)
lmammino
1
170
Drawing Heighway’s Dragon- Recursive Function Rewrite- From Imperative Style in Pascal 64 To Functional Style in Scala 3
philipschwarz
PRO
0
180
Generating OpenAPI schema from serializers throughout the Rails stack - Kyobashi.rb #5
envek
1
440
Featured
See All Featured
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
40
2k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.2k
Designing for Performance
lara
605
68k
Into the Great Unknown - MozCon
thekraken
35
1.7k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.7k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.4k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
Building Your Own Lightsaber
phodgson
104
6.3k
Designing for humans not robots
tammielis
250
25k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Adopting Sorbet at Scale
ufuk
75
9.2k
Optimising Largest Contentful Paint
csswizardry
34
3.1k
Transcript
None
None
"It's just JavaScript" coated with syntax sugar
CoffeeScript attempts to expose those 'good parts' Did you notice?
#nuffsaid it's quite thin
But its core is gooooood
CoffeeScript attempts to expose those 'good parts' CoffeeScript exposes those
'good parts'
CoffeeScript attempts to expose those 'good parts'
Ruby Python Haskell
# prototyping String::downCase = -> @toLowerCase() # functions, chained comparison
isMyAge = (age) -> 24 < age < 26 # splat arguments, pattern matching unCapitalize = (words...) -> (words.map ([firstChar, rest...]) -> firstChar.downCase() + rest.join '').join '' # destructuring assignment, function binding Me = ([surname, middlenames..., lastname] ) -> # string interpolation @name = "#{surname} #{lastname}" # everything is an expression @age = if isMyAge(x = 25) then x else '?' @twitter = unCapitalize('@', surname, lastname) # use jQuery (or any JavaScript library), multi line Strings $('#welcome').bind 'click' (event) => alert "Hello, I'm #{@name}!" # there's no var!! me = Me("Jeroen Matthijs Rosenberg".split ' ')
#nuffsaid
word.spread! for people in continents[..] when people isnt aware