Slide 1

Slide 1 text

No content

Slide 2

Slide 2 text

No content

Slide 3

Slide 3 text

"It's just JavaScript" coated with syntax sugar

Slide 4

Slide 4 text

CoffeeScript attempts to expose those 'good parts' Did you notice?

Slide 5

Slide 5 text

#nuffsaid it's quite thin

Slide 6

Slide 6 text

But its core is gooooood

Slide 7

Slide 7 text

CoffeeScript attempts to expose those 'good parts' CoffeeScript exposes those 'good parts'

Slide 8

Slide 8 text

CoffeeScript attempts to expose those 'good parts'

Slide 9

Slide 9 text

Ruby Python Haskell

Slide 10

Slide 10 text

# 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 ' ')

Slide 11

Slide 11 text

#nuffsaid

Slide 12

Slide 12 text

word.spread! for people in continents[..] when people isnt aware