For one of our JS bundles it's a substantial improvement over YUI's Compressor. Original: 459220 YUI: 241920 Google: 209929 -- 13% improvement YUI + gz: 66164 Google + gz: 61297 -- 7% improvement Caught a few non-fatal syntax errors too. We serve hundreds of thousands of those a day, so that's already committed to our tree and on the way to testing.
Here's another data point: I downloaded jquery-1.3.2.js and jquery-1.3.2.min.js from http://docs.jquery.com/Downloading_jQuery#Current_Release > wc -c jquery-1.3.2.js 120763 > wc -c jquery-1.3.2.min.js 57254 > java -jar compiler.jar --js jquery-1.3.2.js | wc -c 55340 Using Google's compiler saves an additional 4% over the existing minified version (disclosure: I used to work for Google)
Introducing Closure Tools
31–40 of 71 posts
Re: Introducing Closure Tools
#32Earlier quoted context omitted.
I am never going to be able to refer to an actual closure again and have anyone understand what I'm talking about, am I?
I already find that hard enough - I've found that people tend to conflate first-class functions with closures.
Is it possible for a language to support closures without first-class functions? How common is it to have first-class functions without closures? (I think Python sort of had this arrangement, but I think this is fixed now.)
Re: Introducing Closure Tools
#33Earlier quoted context omitted.
I already find that hard enough - I've found that people tend to conflate first-class functions with closures.
Well, is there any real different between a first-class function and a closure that closes over nothing? Is it possible for a language to support closures without first-class functions? How common is it to have first-class functions without closures? (I think Python sort of had this arrangement, but I think this is fixed now.)
Re: Introducing Closure Tools
#34Earlier quoted context omitted.
It was called Closure before Rich announced Clojure to the world.
Thats a terrible argument... He did indeed "announce Clojure to the world" before Google did, and now we all associate the phonetic name with him. Treat "closure" as a project name and pick a different product name, Google.
Re: Introducing Closure Tools
#35What an unfortunate name. Perhaps, in the confusion, it will help to actually promote Rich Hickey's wonderful work.
Personally, I love picking names that recast old words in a new way, and think Closure is a great name for this project.
Re: Introducing Closure Tools
#36What an unfortunate name. Perhaps, in the confusion, it will help to actually promote Rich Hickey's wonderful work.
I think most of the intended audience will not find 'Closure' confusing, because they are unaware of the concept that already has that name. The overlap of people interested in Clojure and people interested in Closure is rather small.
This entire thread is evidence against that point.
Re: Introducing Closure Tools
#37What an unfortunate name. Perhaps, in the confusion, it will help to actually promote Rich Hickey's wonderful work.
Re: Introducing Closure Tools
#38Wow, I have been seriously missing this outside google-land. So happy it's released; it's a fantastic set of tools, even if you only use the compiler as a glorified lint.
Re: Introducing Closure Tools
#39What an unfortunate name. Perhaps, in the confusion, it will help to actually promote Rich Hickey's wonderful work.
This is indeed an unfortunate name. The word 'closure' was, at first, used to describe a concept in programming: http://en.wikipedia.org/wiki/Closure_(computer_science) . Then Clozure and Clojure came along. Now, I can see how these two are related to the aforementioned concept, but I simply can't see what these 'Closure tools' have to do with the concept of closures. Yet the name would suggest that they do. Is there…
Re: Introducing Closure Tools
#40What an unfortunate name. Perhaps, in the confusion, it will help to actually promote Rich Hickey's wonderful work.
This is indeed an unfortunate name. The word 'closure' was, at first, used to describe a concept in programming: http://en.wikipedia.org/wiki/Closure_(computer_science) . Then Clozure and Clojure came along. Now, I can see how these two are related to the aforementioned concept, but I simply can't see what these 'Closure tools' have to do with the concept of closures. Yet the name would suggest that they do. Is there…
So depressing.