Either that, or most languages used today are stuck in the past!
Also, on the language side, Julia is optimized for total throughput, which means even though it is easy to write extremely fast code, it sometimes suffers latency issues during stop-the-world garbage collection or JIT compilation. Julia gives the experienced developer tools to avoid this, but especially for those less practiced with the language it could potentially be an obstacle for real-time games like FPS--of course if you are developing a turn-based game this is less of a concern.
One library I've really liked for this use case is QuickJS. It's a super small ES2020 implementation written in C. It has a great API that lets you bind native C functions and types into JavaScript functions, objects, and classes. This lets you bind native C code that gets used naturally in JavaScript without needing to write wrappers.
The only thing I've seen that's really comparable to lua/luajit in terms of size and simplicity of embedding in a C program is janet. It's bigger but still a single file. I would assume also somewhat slower but if you need raw perf C is right there.... But you get a much more usable language with an actual stdlib so it's a good tradeoff for a lot of applications.
But people do want to use lua. The advantage of julia is mostly speed but the disadvantages of huge runtime, long compile times and weak GC mean it isn't realistically going to be used in games much if at all. luaJIT closes the speed gap by a huge amount and is small and compiles extremely fast.
> but if you need raw perf C is right there
LuaJIT (and julia actually) have very easy FFI integration, but why not make everything in C (ignoring that actual C would be terrible idea compared to C++ for something non trivial)?
Any embedded language is embedded for a reason. I'm not sure what point you are making here.