←back to thread

168 points pabs3 | 1 comments | | HN request time: 0s | source
Show context
ChrisMarshallNY ◴[] No.45758172[source]
Very cool, if impractical (it’s likely that you’d never get an ASM app through the App Store Approval process).

ARM Assembly is a much more Byzantine creature, than the old 8- and 16-bit versions I used, way back in the Pleistocene.

I’m always a fan of starting from the “bare metal,” to learn, but these days, it’s a long trip. When I was just a wee sprog, it was only a couple of steps away.

replies(2): >>45758211 #>>45759401 #
Ecco ◴[] No.45759401[source]
How would that impact the App Store approval? AFAIK they review binaries anyway…
replies(1): >>45759490 #
ChrisMarshallNY ◴[] No.45759490[source]
They do, but ASM doesn't have the guardrails that the compiled languages have, so it's almost certain that private APIs would get accessed.
replies(3): >>45760611 #>>45761070 #>>45761426 #
1. zffr ◴[] No.45761070{3}[source]
> so it's almost certain that private APIs would get accessed

No it's not. Just like with ObjC or Swift, in ASM you have to be explicit about the APIs you want to call. I don't see how you would accidentally call a private API in ASM.

IMO the bigger risk is attempting to call a method that does not actually exist. ObjC or Swift would protect you from that, but ASM would not and may just crash at runtime.