Re: What...
It's not even close to the same principle:
GCC compiles C++ straight to object code.
Debugging C++ using GDB or similar does not have you examining some generated C code, you step through C++ statements.
Python does not 'generate intermediary C code', it generates python bytecode which runs on a singly specified C python interpreter.
clang++ does translate C++ to C prior to compiling it to object code, but it translates it to only be compiled by clang - it does not generate C which it expects icc, gcc or bcc to compile.
A frontend generating code to be used by it's coupled backend == good, a frontend generating code to be used by unrelated backends that do not strictly conform to any standards == bad. Do you need diagrams, or have you got it yet?
And yes, it is a real fucking pain in the arse when you write valid python code, run it on the python interpreter, and end up having to debug the python interpreter. Fortunately, this almost never happens, since the bytecode compiler and the interpreter are tightly coupled. which they aren't in TypeScript.
So perhaps there is some use for this tool. Some flawed minds can seemingly only cope with "OOP == Java" mindset, and this allows them to master the difficulties that are javascript. Or for those shops that previously would use a nice ActiveX control to ensure lock in, here is another bit of technology that will make your clients either come back to only you for improvements, or re-do the entire project from scratch. I was too harsh! And you can do it in an IDE?! Whatever will these clever guys think of next.