jacobx
Joined 5 years ago
Joined 5 years ago
We also have functionality in bitrig to build your app and send it to App Store Connect so you can deploy it on TestFlight.
In a sense, this isn't very different from what React Native does (run interpreted code that calls out into native code), just with Swift instead of JavaScript. There used to be JavaScript-specific requirements in the guidelines, but that has been loosened since Swift Playgrounds was released. Now there are Python IDEs, Jupyter Notebooks, and other apps running arbitrary code in the App Store.
The places you can hit performance issues are things like when the app itself has a tight loop that's doing a lot of work.
Bitrig runs Swift apps which are dynamically generated by an LLM on the iPhone, despite the iPhone strict security provisions (e.g. inability to write executable pages of memory). The way we do this is by parsing the generated Swift code and mapping that to the compiled calls to the libraries that come in the OS. It's pretty weird, but we think it's worth it to get the ability to immediately render the generated code on the phone.
We're very interested in using the interpreter to improve the Swift developer experience in more ways like that.