> I'm not sure - what qualities of a language make it designed for compilation?
I'd say no high level abstractions, no need for a runtime keeping track of what you're doing (garbage collector, bound checks etc...)
The standard also describes a bunch of undefined/undetermined behaviours to let the compiler generate machine code as efficient as possible and without the need for a runtime (or as small a runtime as possible).
None of those things forbid an interpreted implementation but it makes less sense to leave those gotchas into the language if you don't have to talk to the CPU directly, it makes more sense to let the interpreter take care of the architecture-dependent details.
> what qualities of a language make it designed for compilation?
That a language that compiled to good machine code was one of the main goals of the people who designed it. I was making a historical statement, not a qualitative one.
https://www.softintegration.com/
> It truly was designed to be compiled
I'm not sure - what qualities of a language make it designed for compilation?