Lukas frames React Native as approachable for web developers who know JavaScript, while also allowing deeper work with native languages. Abi describes JavaScript as an evolving language and recommends TypeScript for its types and ability to catch bugs. They also explain that JSX and TSX let developers write React components with tag-like syntax.
React Native Programming Languages
Speakers
Lukas, a Callstack host, and Abi, whose role is not stated, discuss programming languages used with React Native at Callstack’s Wrocław studio.
Abi covers Android’s Java and Kotlin, noting that Kotlin is Java-compatible and can be adopted alongside Java in an app. For iOS, they discuss Swift and Objective-C, including Swift Playgrounds as a way to learn through simple programming exercises. They describe IDE support as a strength of working with Java.
The hosts mention C# in the context of React Native for Windows and note that Windows supports multiple languages. A Microsoft Office example illustrates how a long-lived product can combine technologies added across different eras, with React Native as one part of that mix.
They discuss writing React Native apps with languages that compile to JavaScript, including Kotlin and Reason, now called ReScript. Abi says Reason has strict types, a compiler that produces JavaScript, and JSX built into the language. They also describe C++ as an option for native code and bindings, including with React Native’s New Architecture.
Lukas closes by contrasting building a product with JavaScript alone against exploring less common technologies in the React Native ecosystem. Their discussion presents React Native as a way to work at different levels, from app development in JavaScript to native code and other languages.
Takeaways
- TypeScript’s types can catch bugs, and it can be introduced gradually into a JavaScript project.
- React Native development can involve JavaScript and JSX as well as platform languages such as Java, Kotlin, Swift, Objective-C, and C#.
- Kotlin and Reason or ReScript can compile to JavaScript for React Native projects.
- C++ can be used for native code and bindings in React Native applications.
- A product with a long history may combine multiple technologies, so teams should account for that complexity when maintaining it.
Mentioned in this talk
Search inside this talk
What was claimed 14
- builtJordan Walke built
Reason
designer“it was created by Jordan Walke”
YouTube Verified2 sources· Talk, Web· archived
- usesReact Native uses JavaScript
“the language was JavaScript”
1:28inWhat drove CTOs of Callstack and Channels to invest in React Native?YouTube Verified5 sources· Talk
- uses
“It's a new syntax and toolchain for OCaml.”
1:57inReasonable React NativeYouTube Verified2 sources· Talk
- featureTypeScript: Adds types to JavaScript and can be gradually adopted in a project
“write safer JavaScript by adding types to it”
YouTube Unverified1 source· Talk
- usesTSX uses TypeScript
“TSX is the same thing, but for TypeScript”
YouTube Unverified1 source· Talk
- featureJSX: Lets developers express components using markup-like syntax
“You get to write them as components, similar to HTML tags”
YouTube Unverified1 source· Talk
- feature
Android Studio: Can translate Java files into Kotlin files
“functionality in Android Studio to translate your Java files into Kotlin files”
YouTube Unverified1 source· Talk
- featureKotlin: Java-compatible
“The premise with Kotlin is that it is Java-compatible”
YouTube Unverified1 source· Talk
- uses
“It became Apple's default language for iPhone”
YouTube Unverified1 source· Talk
- built
GitHub Next built Objective-C
“Objective-C was created at NeXT”
YouTube Unverified1 source· Talk
- usesReact Native uses C
“Windows uses C#”
YouTube Unverified1 source· Talk
- uses
“using so much React Native in your Microsoft Office suite”
YouTube Unverified1 source· Talk
- feature
Reason: Has strict types, produces JavaScript, and treats React as a first-class citizen with JSX embedded in the language
“it produces JavaScript for you”
YouTube Unverified1 source· Talk
- featureFabric: Supports writing C++ bindings and C++ code
“With the New Architecture, you can write C++ bindings and C++ code”
YouTube Unverified1 source· Talk










