Script# to tame the JavaScript beast?

10 years ago, JavaWorld was wondering if JavaScript has a future. Today, JavaScript has emerged as the most widely deployed form of a "runtime" available. Nevertheless, most of the of the criticism raised a decade ago still applies. Despite the ECMAScript standard (a common, portable subset of JavaScript implementations) existing implementations and side-effects are tied to Browsers.

Developing and debugging JavaScript is still a nightmare. For that reason, most Web 2.0/AJAX style environments offer ways to hide JavaScript, or at least reduce it to tested, portable library modules. But even if you choose a friendly environment like the ASP.NET based ATLAS, there may be situations forcing you to hand-craft JavaScript.

Nikil Kothari is working on yet another approach to tame the beast: Script#.

Script# is a C# to JavaScript compiler. It takes (valid) C# source code as input, and produces JavaScript output. The output is either "plain", "compact" (for deployment) or instrumented for easy debugging. The idea is to use the power of a high-level language, and tools for refactoring etc., while deploying to - whatever is available.

Will JavaScript survive another decade? Or will a portable CLR and WPF/e replace it altogether?