Consider the following scenario: Bob is making some compiled software that will be run on a host machine. Bob knows what operating systems Bob wants to support, and knows the ISAs those operating systems supports. Bob is also a huge vibe coder, and Bob learned that 'assembly is the best language you can write in, as you have the most control' (this is debatable, but gives Bob modus operandi).
So Bob builds his project, moving subroutine and subroutine so that his project is built. Bob then realizes something; he didn't have to compile a single piece of code. He just had to assemble it.
Is this as far as AI can go? Assumedly, it could spit out correct binaries if it was trained well enough.
In your example scenario, it sounds like Bob is vibe-coding a project in assembly language, and then using an existing assembler to create the final binary?
I have not tried it, but I would imagine that current LLMs are relatively weak on generating assembly language, just due to less thorough training compared to higher-level languages, but even if so, that's surmountable.
As for, what I think you are suggesting, having the LLM also do the assembly step? Again, in theory, sure, but I would think just using the existing known-good assembler would be preferable to training an LLM to convert assembly language to binary. I'm not sure what you would gain in terms of either speed or overall productivity to have the LLM itself do the assembler step?
reply