CoffeeScript es un pequeño y elegante lenguaje de programación que compila en JavaScript creado por Jeremy Ashkenas haya por el 2009.
Si conoces bien JavaScript no te costará nada de trabajo aprender CoffeeScript y muy probablemente agradecerás lo elegante y simple de su sintáxis, la cual se inspira mucho en Ruby o Python. Pero CoffeeScript no se trata solo de quitar parentesis y corchetes a JavaScript, sino que el lenguaje incluye bondades como comprensiones y herencia pseudo-clásica. Además de que el código generado está tan optimizado, que no es de sorprender que a menudo el JavaScript resultante sea mucho más eficiente que uno tecleado a mano a pesar de seguir siendo bastante legible.
La regla de oro de CoffeeScript es: “Es simplemente JavaScript“. El código se compila uno a uno en el JS equivalente, y no hay una interpretación en tiempo de ejecución. Se puede usar cualquier biblioteca de JavaScript sin problemas desde CoffeeScript (y viceversa). La salida del compilado es legible y elegante, y como ya mencioné tiende a correr tan rápido o más rápido que el código JavaScript a escrito a mano.
Ejemplo:
Codigo CoffeScript | Código JavaScript resultante |
var cubes, list, math, num, number, opposite, race, square, __slice = [].slice; |
|
# Variables: |
number = 42; opposite = true; |
# Condiciones number = -42 if opposite |
if (opposite) { |
# Funciones: |
square = function(x) { |
# Arrays: |
list = [1, 2, 3, 4, 5]; |
# Objects: |
math = { |
# Splats: |
race = function() { |
# Array comprehensions: |
cubes = (function() { |