Wie allgemein bekannt ist, ist JavaScript ein janusköpfiges Biest mit einer Syntax, die es (wie auch seinen Namen) seinerzeit nur bekommen hat, weil damals alles als cool galt, was bloß entfernt an Java erinnerte. Wie sähe JavaScript aus wenn es heute erfunden würde? Vielleicht wie CoffeeScript. CoffeeScript ist eine kleine Sprache mit entrümpelter Syntax, die zu sauberem JS-Code ohne all die bad parts kompiliert. Beispiel:

# Grupen bei der Fußball-WM, sortiert nach Platzierung in der Vorrunde
gruppen: {
  a: ["Uruguay", "Mexiko", "Südafrika", "Frankreich"]
  b: ["Argentinien", "Südkorea", "Griechenland", "Nigeria"]
  c: ["USA", "England", "Slowenien", "Algerien"]
  d: ["Deutschland", "Ghana", "Australien", "Serbien"]
}

# Die Platzierungen in einer Gruppe ermitteln
ermittle_gruppensieger: (gruppe) ->
    gruppensieger: gruppenzweiter: teilnehmer: "Unbekannt"
    ergebnis: (erster, zweiter, rest...) ->
        gruppensieger: erster
        gruppenzweiter: zweiter
        teilnehmer: rest
    ergebnis gruppen[gruppe]...
    alert "Gruppensieger wurde " + gruppensieger + " vor " + gruppenzweiter + ". Außerdem in der Gruppe: " + teilnehmer

# Wer ist in Gruppe D weitergekommen?
ermittle_gruppensieger('d')

Wird zu:

var ermittle_gruppensieger, gruppen;
var __slice = Array.prototype.slice;
gruppen = {
    a: ["Uruguay", "Mexiko", "Südafrika", "Frankreich"],
    b: ["Argentinien", "Südkorea", "Griechenland", "Nigeria"],
    c: ["USA", "England", "Slowenien", "Algerien"],
    d: ["Deutschland", "Ghana", "Australien", "Serbien"]
};
ermittle_gruppensieger = function(gruppe) {
    var ergebnis, gruppensieger, gruppenzweiter, teilnehmer;
    gruppensieger = (gruppenzweiter = (teilnehmer = "Unbekannt"));
    ergebnis = function(erster, zweiter) {
        var rest;
        var _a = arguments.length, _b = _a >= 3;
        rest = __slice.call(arguments, 2, _a - 0);
        gruppensieger = erster;
        gruppenzweiter = zweiter;
        teilnehmer = rest;
        return teilnehmer;
    };
    ergebnis.apply(this, gruppen[gruppe]);
    return alert("Gruppensieger wurde " + gruppensieger + " vor " + gruppenzweiter + ". Außerdem in der Gruppe: " + teilnehmer);
};
ermittle_gruppensieger('d');

Sieht gut aus, oder? Wer mehr wissen möchte kann sich die neueste Episode von The Changelog reinziehen, in der CoffeeScript-Erfinder Jeremy Ashkenas interviewt wird oder sich in den folgenden nur 30 Minuten langen Talk ansehen. Hierin erklärt und demonstriert Ashkenas alles, was es zu CoffeeScript zu wissen gibt:

Blip.tv

CoffeeScript demonstriert genau die Einstellung, die man haben muss: Wenn die Browser es so schwer haben, den Müll, den sie in sich tragen, loszuwerden, muss man als Entwickler halt selbst ran.