The difficulty I found with Closure Compiler was that there were instances of valid, working JS code that it didn't (and in some cases probably couldn't) reliably process. Consequently, you had to follow stricter conventions about things like writing object literals than the language itself required.
That was enough for the projects I'm thinking of to decide a relatively simple minifier like Uglify was a better choice for their specific situations. Now that a lot of pre-optimisation JS is the output from one transpiler or another, that might be more of a practical limitation.
Comments
The difficulty I found with Closure Compiler was that there were instances of valid, working JS code that it didn't (and in some cases probably couldn't) reliably process. Consequently, you had to follow stricter conventions about things like writing object literals than the language itself required.
That was enough for the projects I'm thinking of to decide a relatively simple minifier like Uglify was a better choice for their specific situations. Now that a lot of pre-optimisation JS is the output from one transpiler or another, that might be more of a practical limitation.
That's basically what I mean by 'pretty much but not really javascript'.