How can it virtualize/emulate without JIT? I’m aware of what JIT is in the context of programming languages, but I’m having trouble understanding how you can virtualize something without JIT.
To convert one processor architecture to another, instead of translating it into code of the correct architecture, you can also simply perform the operation in the loop by interpreting each instruction as it is encountered.
It’s the same distinction between a JIT and An interpreter. You can convert the code in chunks which is more efficient, or you can read the instructions one at the time and perform the corresponding operation.
Apple does not allow JIT of any form from third-party developers to my knowledge.
Test it out today. The limitations are apparent. Without the JIT it's noticeable on my iPad compared to my mac. I actually thought it wasn't working - turns out it was just sssuuuuppppeerrrr slow. Happy to support its development though. I'd love to be able to run my development environment on my iPad one day.
I like the direction Apple is going in. Probably not surprising given that their competitors (Microsoft and Google) make Shittier products every year, so they can try to get some consumers to switch that normally wouldn't consider Apple products.
To be fair: they didn’t start going this direction voluntarily, which I really hate.
They did not recognize that these things (like USB-C, alternate AppStores (and in Extension allowing emulation as people would more likely to jump on the other AppStores without it), …) would be helpful for them…
USB-C was definitely happening in any case. Apple was among the first to standardize it on their laptops and desktops, they were just reluctant to move it to phones too soon after switching from 30 pin. When Apple announced lightning (before usb-c was ready) they said it would be the connector for the next 10 years to allay fears that they were just going to switch it again. The USB C switch happened 10 years later.