this post was submitted on 14 Jul 2024
142 points (99.3% liked)

Apple

17529 readers
73 users here now

Welcome

to the largest Apple community on Lemmy. This is the place where we talk about everything Apple, from iOS to the exciting upcoming Apple Vision Pro. Feel free to join the discussion!

Rules:
  1. No NSFW Content
  2. No Hate Speech or Personal Attacks
  3. No Ads / Spamming
    Self promotion is only allowed in the pinned monthly thread

Lemmy Code of Conduct

Communities of Interest:

Apple Hardware
Apple TV
Apple Watch
iPad
iPhone
Mac
Vintage Apple

Apple Software
iOS
iPadOS
macOS
tvOS
watchOS
Shortcuts
Xcode

Community banner courtesy of u/Antsomnia.

founded 1 year ago
MODERATORS
top 19 comments
sorted by: hot top controversial new old
[–] [email protected] 24 points 4 months ago (1 children)

No JIT so performance will be limited, however, a massive step forward for sure.

[–] [email protected] 2 points 4 months ago (1 children)

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.

[–] [email protected] 5 points 4 months ago (2 children)

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.

[–] [email protected] 2 points 4 months ago (1 children)

Wow, I didn’t realize Apple was that serious. I always thought their stance was not wanting Node.js, Python, etc. (interpreted languages) running, not necessarily this.

[–] [email protected] 1 points 4 months ago

You can ship Python in an iOS app just fine. It's dynamic code generation that is specifically disallowed, among other rules.

[–] [email protected] 2 points 4 months ago (1 children)

iirc they allow it in wasm, but that's about it

[–] [email protected] 1 points 4 months ago

Correct me if I'm wrong but I think that code still technically runs as part of the browser, which is Apple code that is specially allowed to use JIT. The third-party code itself isn't the JIT.

[–] [email protected] 10 points 4 months ago

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.

[–] [email protected] 7 points 4 months ago

I have a functional version of Windows 95 on my phone now, so that’s neat. XP setup was too slow and I got impatient.

[–] [email protected] 2 points 4 months ago (2 children)

How well does it run Half Life Alyx on the Apple Vision Pro?

[–] [email protected] 6 points 4 months ago (1 children)

This emulator, without JIT, struggles to run windows XP. Let alone anything newer than that.

So no Half Life Alyx anytime soon. Maybe the original Half Life.

[–] [email protected] 2 points 4 months ago (2 children)

Why is JIT not being allowed in the app store?

[–] [email protected] 3 points 4 months ago

Apple only allows JIT for development. Why? Only Apple knows.

[–] [email protected] 1 points 4 months ago

Yep. I actually hate that.

[–] [email protected] 1 points 4 months ago (1 children)

That wouldn’t work even if you could get a modern OS to run well

[–] [email protected] 0 points 4 months ago
[–] Matriks404 2 points 4 months ago (1 children)

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.

[–] [email protected] 14 points 4 months ago (1 children)

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…

[–] Repelle 1 points 3 months ago

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.

The other stuff I agree with.