The first one is just a pure C++ module that gets added to the runtime and gets directly executed on each platform, the second one uses the new Expo modules API so i can write the code in Kotlin and Swift and let it be implemented using JSI or the old bridge based on the users package.
Here is my question for the expo dev team: Suppose i have a data in JS land that i want to hash (Say, 2 MB). Based on each architecture, how many copies of my data will exist? We know there will be a JS one because that is where the data was defined, but how about the rest of it? Will there be a copy in each language?