Original URL: http://www.theregister.co.uk/2009/11/06/google_closure_tools/

Google unleashes internal JavaScript tools

Channel the power of Gmail

By Gavin Clarke

Posted in Developer, 6th November 2009 00:06 GMT

Google's critical mass online, combined with recent years' Web 2.0 fever, have helped consolidate 14-year-old JavaScript in the field of web development.

Now Google has released some of the tools it used to build Gmail, Google Docs, and Google Maps that helped in that process of establishing JavaScript as a central player in the line-up that is AJAX.

The giant Thursday released a compiler, library, and set of templates it calls Closure Tools. The tools have been released under an open-source license, although Google did not say what license.

Google did say, though, that the Closure Tools have grown to be a key part of the JavaScript infrastructure behind its web applications.

"We're particularly excited (and humbled) to open source them to encourage and support web development outside Google," Google said on its blog. "We want to hear what you think, but more importantly, we want to see what you make."

The tools are designed to make the task of building and maintaining the notoriously complex JavaScript faster and more simply.

This is Google's second such offering, following development and maintenance of JavaScript in different browsers with Google Web Toolkit (GWT). The difference is that GWT lets you build JavaScript applications in Java while Closure Tools are for JavaScript.

The Compiler removes dead code and rewrites and minimizes what's left to run fast on browsers' JavaScript engines. "The compiler also checks syntax, variable references, and types, and warns about other common JavaScript pitfalls," Google said. You can compile code through a text box or a RESTful API.

The Closure Library provides something akin to a standard JavaScript library - generally lacking in JavaScript - to build large, complex web applications. The library is server-agnostic and designed to be used with the Closure Compiler. Google said the library: "Provides clean utilities for common tasks so that you spend your time writing your app rather than writing utilities and browser abstractions."

Closure Templates can be used in JavaScript or Java for the client or server and have been precompiled to produce what Google called "efficient" JavaScript. The Closure Templates use a simple syntax that Google said is "natural for programmers." ®