Commercial CNC machines and other motion control applications will _never_ run off of web-based software. Not to say it isn't possible under the right conditions, but those conditions can't be ensured. There will always exist applications that require low response times that the internet cannot dependably deliver.
High end CAD and CAM software also falls under this umbrella. There is simply too much computation/rendering occuring.
I don't know if your solution is correct. Many functional abstractions in Haskell, such as those that involve high level typeclass abstractions, make code more esoteric, and not more clear. However this is a tradeoff to make code more based in algebra and logical structure. This is more important than readability and conciseness.
There is a very strong argument that you shouldn't be using the high-level esoteric typeclass abstraction in Haskell, or even that you shouldn't be using Haskell for production programming. I say this as someone who likes Haskell a lot and wrote one of the top tutorials on the web for it. But if you run a business based on software, and your core value proposition is not the 100% provability of your code (eg. Galois), then readability and conciseness are absolutely more important than algebra and logical structure.
Your comment would be so much better without the condescending "sorry" at the end. You're in a public forum airing your opinion, not rejecting an application for something.
This isn't about web design. You should just add links to these articles on the article you submitted. Good for google ranking, increases the chances of someone reading them, makes user happy :)
Something we are looking to change. The duplication is pretty annoying, but we use AssetGraph-Builder for our production build, which uses ngmin, which doesn't play nice with ui-router. Also, now that 1.3 errors globally when you forget annotations, using NgAnnotate is much more of a no-brainer.
Feel free to open issues and I'm sure it will be addressed.
ng-annotate itself just produces output for input (stdin/stdout or via files) so it does not at all have any trouble participating in a "complex build environment".