> Dolphin isn’t on iOS, because you can’t do JIT compilation on iOS....Well, Apple has one exception to its JIT restrictions: web browsers. JavaScriptCore, WebKit’s JS engine, uses JIT compilation for its higher-performance tiers. So, if a JS function is called enough times, eventually it’ll be optimised and compiled into native machine code. The same is true for WebAssembly.
I was wondering about the why of the headline, and this is a really interesting answer. Such a beautiful way to get around restrictions. I wonder how applicable it is to other projects.
What are you basing this statement on? The code comments read very human to me. Your the one hurting their chances of finding a job by falsely saying this.
Every company they apply to will be leveraging LLMs. Time to get over it. No need to be grumpy old man about such things. Every generation has faced such foes. The old always yields to the new.
You can’t vibe code a production capable C compiler if you’ve never written one.
Sure, companies are asking for LLM experience. But whether they know it or not they are also hiring someone who knows what they’re doing with the output.
Projects like this are still worth doing by hand. I’d dare say it’s even enjoyable.
I don't disagree with you. I just don't think it's particularly charitable for a presumably seasoned developer to not only go out of their way to accuse some junior of using LLMs but then declare that this obviously makes them unemployable.
I've always really enjoyed Andrew Kelley's article about trying to statically recompile NES code from 2013 [1]. Basically he makes a ton of progress but gets hung up not just on the realities of the handwritten assembler of the era just not being all that great at mapping to higher level LLVM IR. In the conclusion he specifically calls out a JIT-type methodology as probably being the way to go, where you live-recompile the hot paths when you have the runtime data required to actually understand them, and don't worry about the parts you can't.
True, but the WASM JIT is pretty low overhead because WASM seems to be a good design for what it needs to do. It's what I was referring to with the 20% overhead figure.
I would not expect the average undergraduate to understand the intricacies of how iOS does dynamic codesigning enforcement. There are plenty of people who have graduated with advanced degrees and work at Apple who don't really understand how it works, either.
I was wondering about the why of the headline, and this is a really interesting answer. Such a beautiful way to get around restrictions. I wonder how applicable it is to other projects.
For the times they are a-changin'
Sure, companies are asking for LLM experience. But whether they know it or not they are also hiring someone who knows what they’re doing with the output.
Projects like this are still worth doing by hand. I’d dare say it’s even enjoyable.
Very cool to see something like that in action.
[1]: https://andrewkelley.me/post/jamulator.html
What's cool here is to have a GameBoy JIT runtime at all.
https://github.com/StephenDev0/StikDebug
For an undergrad project, I suppose it's fine to conveniently forget about the existence of this solution for the sake of getting a good grade.
It’s right for ‘regular’ apps.