Ruby On Rails / Javascript • Formation • Editeur de maptimize (Clustering Server Side pour google map en mode SaaS) • twitter: sgruhier Wednesday, January 25, 12
un compilateur • "It's just JavaScript" • “syntactic sugar” inspiré par Ruby, Python et Haskell • Syntaxe simplifiée • Javascript Good Parts • Ajout de fonctionnalités indispensables Wednesday, January 25, 12
} var list = [1, 2, 3, 4, 5]; var squares = []; for (var i = 0; i < list.length; i++) { squares.push(square(list[i])); } square = (num) -> num * num list = [1..5] squares = (square n for n in list) Wednesday, January 25, 12
Ajout d’une closure autour de chaque fichier • Il faut exporter ce que l’on veut rendre public • Plus de “leaking global variables” (function() { // .... })(this) Wednesday, January 25, 12
function devient -> (ou =>) • this devient @ • {} défini par indentation • Tout code est une expression et retourne une valeur Wednesday, January 25, 12
car is "blue" then "..." else "..." if car isnt "blue" then "..." else "..." if a and b then "..." return unless a or b a or= 12 Wednesday, January 25, 12
= (capitalize(person.name) for person in people) for person in people when person.age > 18 names.push(capitalize person.name) Wednesday, January 25, 12