ClojureScript is the only compile to JS language that I'm aware that lets you fully leverage the power of modifying JavaScript prototypes w/o fear of gross incompatibilities:<p><a href="http://clojurescriptone.com/documentation.html#one.color" rel="nofollow">http://clojurescriptone.com/documentation.html#one.color</a><p>Note that they've extended (safely because of namespaces) browser natives including Element, Array, String, as well as the custom ClojureScript data types to respond to the color function.