CoffeeScript, pequeño lenguaje de Script con sintaxis inspirada en Python y Ruby

CoffeeScript es un pequeño lenguaje de script que hará que los scripts sean más fáciles de leer y escribir. Actualmente, a la hora de utilizar JavaScript, puede ser que su utilización sea un poco arcaica, y con CoffeeScript, lo que intenta es facilitar a los programadores las funciones de codificar el código.

CoffeeScript tiene una sintaxis inspirada en Ruby y Python permitiendo que los scripts sean más sencillos de escribir y de leer.

CoffeeScript compila todo el código con extensión .coffee en JavaScript. La versión actual es la 0.9.1, y es una buena candidata a ser la versión definitiva.

Un ejemplo de código utilizando CoffeeScript


# Assignment:
number   = 42
opposite = true

# Conditions:
number = -42 if opposite

# Functions:
square = (x) -> x * x

# Arrays:
list = [1, 2, 3, 4, 5]

# Objects:
math =
  root:   Math.sqrt
  square: square
  cube:   (x) -> x * square x

# Splats:
race = (winner, runners...) ->
  print winner, runners

# Existence:
alert "I knew it!" if elvis?

# Array comprehensions:
cubes = math.cube num for num in list


Una vez compilado, la salida en javaScript será algo como lo siguiente.


var _i, _len, _ref, _result, cubes, list, math, num, number, opposite, race, square;
var __slice = Array.prototype.slice;
number = 42;
opposite = true;
if (opposite) {
  number = -42;
}
square = function(x) {
  return x * x;
};
list = [1, 2, 3, 4, 5];
math = {
  root: Math.sqrt,
  square: square,
  cube: function(x) {
    return x * square(x);
  }
};
race = function(winner) {
  var runners;
  runners = __slice.call(arguments, 1);
  return print(winner, runners);
};
if (typeof elvis !== "undefined" && elvis !== null) {
  alert("I knew it!");
}
cubes = (function() {
  _result = []; _ref = list;
  for (_i = 0, _len = _ref.length; _i < _len; _i++) {
    num = _ref[_i];
    _result.push(math.cube(num));
  }
  return _result;
})();


Vía: Sitio oficial
COMPARTE ESTA NOTICIA

COMPARTIR EN FACEBOOK
COMPARTIR EN TWITTER
COMPARTIR EN LINKEDIN
COMPARTIR EN WHATSAPP