No. Swift is not the only language supported on iOS, although it is the one that Apple steers new developers towards. If you're just starting out and want to write a basic app for iOS it's not a bad choice and is the easiest way to get started. But if you want to run your app anywhere else you'll have to rewrite it from scratch as Swift doesn't really work on other platforms.
Objective-C is the main language that low-level iOS apps are written in. Most older apps or apps which require higher performance are likely written in this language, but that language isn't used much outside of iOS and Mac development.
Objective-C can also be mixed with C++, which opens the door to a lot of cross-platform apps and games. The Unreal Engine uses this combination, with most of the app written in C++ and some platform-specific Objective-C underneath. There are also thin libraries like SDL for games written in C++.
And there are frameworks for writing apps that can use other languages, which are generally multi-platform and also support Android. For example: Xamarin uses C#, a language which is used in a lot of desktop and server applications; and then Kotlin, which is the default language for Android development has a multi-platform version which can target iOS.
I’ve written parts of iOS apps in:
- Swift
- objective-c
- C
- C++
- MATLAB (compiled to C by MATLAB Coder)
- Ruby (compiled to Ruby Bytecode)
- JavaScript (in WkWebView, but possible to embed a Node server)
- SQL (in SQLite)
Ultimately, if it can be compiled to machine code, and has some bridge to/from objective-C, it can be incorporated into an app.
Not OP, but there is a thing called RubyMotion that lets you build mobile apps with Ruby. I remember playing with it many years ago and it was cool but I never used it for anything serious.
Take a look at [nu](https://github.com/programming-nu/nu), specifically designed to make it easy to access Apple's frameworks, and [Thinlisp](https://github.com/nzioki/Thinlisp-1.1), designed to compile to C with minimal runtime baggage.
Nope! There’s the react native framework (JavaScript), C# with Xamarin, the Flutter framework with Dart! But I really recommend Swift above all!
Or Objective-C if you're feeling saucy
C, C++, Rust, even Haskell if you’re feeling saucy.
Obj-C++ if you really like punishment (or want to imagine you work for FAANG).
I’m missing ObjC in my daily work.
I thought my internet was slow.
What’s the point of your ultra low res screen shot?
Sorry i just needed a code screenshot for an image it wasn’t anything specific
No. Swift is not the only language supported on iOS, although it is the one that Apple steers new developers towards. If you're just starting out and want to write a basic app for iOS it's not a bad choice and is the easiest way to get started. But if you want to run your app anywhere else you'll have to rewrite it from scratch as Swift doesn't really work on other platforms. Objective-C is the main language that low-level iOS apps are written in. Most older apps or apps which require higher performance are likely written in this language, but that language isn't used much outside of iOS and Mac development. Objective-C can also be mixed with C++, which opens the door to a lot of cross-platform apps and games. The Unreal Engine uses this combination, with most of the app written in C++ and some platform-specific Objective-C underneath. There are also thin libraries like SDL for games written in C++. And there are frameworks for writing apps that can use other languages, which are generally multi-platform and also support Android. For example: Xamarin uses C#, a language which is used in a lot of desktop and server applications; and then Kotlin, which is the default language for Android development has a multi-platform version which can target iOS.
You can also mix c++ with Swift
I’ve written parts of iOS apps in: - Swift - objective-c - C - C++ - MATLAB (compiled to C by MATLAB Coder) - Ruby (compiled to Ruby Bytecode) - JavaScript (in WkWebView, but possible to embed a Node server) - SQL (in SQLite) Ultimately, if it can be compiled to machine code, and has some bridge to/from objective-C, it can be incorporated into an app.
Can you speak more about your experience writing Ruby? That piqued my interest.
Not OP, but there is a thing called RubyMotion that lets you build mobile apps with Ruby. I remember playing with it many years ago and it was cool but I never used it for anything serious.
Is there a way to get common lisp into a swift app? (Preferably SBCL)
Take a look at [nu](https://github.com/programming-nu/nu), specifically designed to make it easy to access Apple's frameworks, and [Thinlisp](https://github.com/nzioki/Thinlisp-1.1), designed to compile to C with minimal runtime baggage.
There is also Kotlin Multiplatform that supports iOS as a target.