News for hackers. Stuff that matters.
Re:C as an Intermediate Language (2012) by loup-vaillant on Monday May 16, 2016 @03:01AM (#11704721)
> The problem is that usually not very human readable C comes out of it

The x86 assembly or LLVM intermediate representation that comes out of most compiler is not very human readable, but I don't see anyone having any problem with it whatsoever. Readability of generated code was never the point of C using C as a back-end. The point is portability and tooling.

By the way /u/jjnoakes can suggest fancy languages and compilers, if only they can generate native code on obscure platforms (I guess, something other than x86 and ARM). Generating C code (even utterly unreadable C code) would solve his problem.

Re:C as an Intermediate Language (2012) by jjnoakes on Monday May 16, 2016 @08:11AM (#11705768)
Remember, it isn't only the architecture. It is also the calling conventions and object/shared library/executable file format.

All things that require work if I cross compile, but all things I get for free if I generate C or C++.

I would prefer readable C or C++ as much as possible because it gives me debugability if the code generator goes wrong and it gives me an out if I want to move away from the language some day.

Re:C as an Intermediate Language (2012) by loup-vaillant on Monday May 16, 2016 @07:24PM (#11710369)
Well, there aren't many solution out of this hole. If you need another language, you might have to write (and control) the compiler yourself. As in, if the code generator (or anything else) goes wrong, you can correct it.

<sarcasm> Now this might require a little bit more work. </sarcasm>

Re:C as an Intermediate Language (2012) by jjnoakes on Tuesday May 17, 2016 @08:27AM (#11712993)
The solution I mentioned in my original post gets me out if this issue, as does the one in the article that this hn post is all about.