Kotlin/Native - does this mean Kotlin & Kotlin Native or Kotlin Native - kotlin

Kotlin documentation is full of mentioning "Kotlin/Native"
Example:
There are many more platform libraries available for host and cross-compilation targets. Kotlin/Native distribution provides access to OpenGL, zlib and other popular native libraries on applicable platforms. - https://kotlinlang.org/docs/native-platform-libs.html#popular-native-libraries
Does "Kotlin/Native" mean:
Kotlin Native
or does it mean
Kotlin & Kotlin Native

Kotlin/Native is the name used just for the Native targets of Kotlin.
In general, something is said to support Kotlin Multiplatform if it targets Kotlin/JVM (+Android), Kotlin/JS, and Kotlin/Native – or a subset of those – while Kotlin/Native means specifically the targets that assume compiling Kotlin to the platform's native binaries.

Related

Add external C++ libraries to react native Turbo app

I am trying out the new react-native Turbo feature.
The calls to the cpp code works as the documentation mentions.
Is there a way to add external C++ libraries like cryptopp.
I have my github repo here RNTurbo.
Try to build your library with https://github.com/callstack/react-native-builder-bob - with interactive CLI you can generate a proper project structure with c++ libraries support for both platforms ios and android

Can I use new React Native architecture with libraries which doesn't support it

This year React Native team introduced new architecture https://reactnative.dev/blog/2022/03/15/an-update-on-the-new-architecture-rollout. This functionality is still under the flag but for me is not clear, can I use all libraries which working with old bridge with this new architecture?
I haven't found answer in the official documentation. Only thig I found is a list of libraries which support new architecture. https://github.com/reactwg/react-native-new-architecture/discussions/6
It depends on what type of a library it is. Library maintainers can add support for both architectures.
You can find a compatibility table in this readme.

Is glibc used in react native?

I am wondering if any of you know, whether or not react-native uses glibc library as their dependency. I've searched everywhere, and the only thing I've found was the link. It says:
NOTE(agallagher): The platform really should be responsible for providing
this type of provided dependency. As it is now, we need to setup dummy
rules to model glibc's libraries.
Does anyone know anything else?
React Native does depend on some components of glibc (like pthread which is the first mentioned precompiled library in the link you mentioned) but those same components are offered by Bionic, Android's own C library.
Since Bionic is precompiled and bundled with the OS, React Native leverages that implementation instead of using glibc, which explains the note:
The platform really should be responsible for providing this type of provided dependency.
On iOS, pthread and other C libraries needed by React Native are already available through the iOS SDK.

What does it mean to say that Java is native for Android and Objective-C is native for iOS?

By saying native code, we understand the code which is being executed by directly calling CPU or OS functions. Why do people say that Android went with Java, or Java is native for Android development when Java is being executed on VM? The same things you can for Objective-C and iOS. What is the reason people say that?
None of them are "native" to the OS. Both are languages, both get compiled.
objective C will get compiled to assembly, that can be directly run by a processor
java will get compiled to byte code that will be interpreted by a JVM (namely dalvik)
since Android 4.4, a new virtual machine appeared for Android : ART, it will get all bytecode compiled in assembly, but this is still experimental for now.
With Objective C you could argue that the language used to create apps is the same as the language to code the OS. For Android is would be more difficult to say so. The OS is build mostly in C, some parts in Java, but Android API themselves are also made of a mix of C and Java.
Android Native Library, allows you to implement parts of your app using native-code languages such as C and C++, allows you write native code. JAVA - is not native. On the byte-code level, Android doesn't use Java. The source is Java, but it doesn't use a JVM.
WHY JAVA? Android runs on many different hardware platforms. You would need to compile and optimize your native code for each of these different platforms!
Why does Android use Java?

Is it possible to build Adobe AIR native extension with .NET C#?

As the question implies, is there any tutorial or article about using .NET C# to build a native extension for Adobe AIR ?
Is it a must to use C ?
You're limited to using C for iOS ANEs or Java for Android ANEs as the Flash Runtime Environment provides an SDK only for those languages. You can, in practice, write your native extension in any language that can properly interface with the SDK language (e.g. Objective-C or C++ on the iPhone, for example).