Of course it's a path. Claude does that already.

Existence proof: everything Claude Code does, including talking to LLMs on GPUs via the Anthropic API, and shelling out to other tools installed on your system, could in principle be compiled into one big self-contained binary (or Turing Machine if you prefer) that is able to take natural language in and produce compiled binaries out.

If you wanted to go a bit harder you could train Claude to output machine code directly, but that's not necessary. Whether the machine code comes straight out of an LLM or out of a compiler that is fed source code that comes from an LLM is a mere implementation detail, there's not any fundamental difference.

I think it's more than an implementation detail. With an intermediate step of source code compiling & linking, there is a mechanical process that checks for well-formedness that would otherwise be skipped. This is especially important if you're editing a large codebase and not one-shotting something from scratch.

There are also times when you want the final product to be able to target different architectures and platforms. Generating into a higher level language allows for re-targeting the code with only changing a few compiler and linker flags. I would much rather that than hoping the LLM is feature- (and bug-)compatible between generation runs.