Martin Rajniak
07/08/2021, 12:26 PMBig Chungus
07/08/2021, 12:29 PMBig Chungus
07/08/2021, 12:30 PMBig Chungus
07/08/2021, 12:31 PMMartin Rajniak
07/08/2021, 12:33 PMit has GCno expert - but isn't solution for KMP GC on each platform different?
looks the same, no matter the platformin theory you can have C++ code same as well, but there are platform specific differences that might be comparable to the
expect/actual
code needed in KMP, right?Big Chungus
07/08/2021, 12:35 PMMartin Rajniak
07/08/2021, 12:35 PMKMP library ecosystem is much smalleryou mean smaller that you don't have a lot of solutions yet? I assume you don't talk about size of framework π (which is also one of the features we are researching)
Big Chungus
07/08/2021, 12:36 PMBig Chungus
07/08/2021, 12:36 PMBig Chungus
07/08/2021, 12:38 PMMartin Rajniak
07/08/2021, 12:40 PMMartin Rajniak
07/08/2021, 12:42 PMMartin Rajniak
07/08/2021, 12:45 PMMartin Rajniak
07/08/2021, 12:46 PMBig Chungus
07/08/2021, 12:47 PMMartin Rajniak
07/08/2021, 12:48 PMBig Chungus
07/08/2021, 12:48 PMMartin Rajniak
07/08/2021, 12:49 PMBig Chungus
07/08/2021, 12:49 PMkpgalligan
07/08/2021, 1:49 PMkpgalligan
07/08/2021, 1:51 PMSmaller in terms of libraries availableYes and no. Strictly speaking, in native mobile let's say, while you have access to a lot of C++, the world of things targeted at native mobile, and the community around them, is pretty different. I don't know the C++ community deeply, but with Dropbox throwing in the towel (https://github.com/dropbox/djinni), I would guess it's not a huge growth situation. Now, in this situation, you're looking at several other platforms, so that changes things a bit.
kpgalligan
07/08/2021, 1:54 PMBTW, regarding size - how does reusing of transitive dependencies work in KMP native?
is it possible to have e.g. protobuf library used in KMP library A and KMP library B only once?Yes and no. You cannot create multiple Xcode frameworks, each from a different KMP library, and have them talk to each other. You'll need to wrap library A and B in a terminal Xcode framework that is imported, but then that will have a single copy of everything. It's a long story and a much asked for feature, but for now you need to create a single framework (and probably ongoing. The Kotlin compiler is very conservative in what it includes for size reasons, so when compiling lib A it'll only include the parts of protobuf that lib A needs, and it won't know what part of protobuf lib B needs, and vice versa. Multiply that significantly for Kotlin stdlib)
kpgalligan
07/08/2021, 1:55 PMMartin Rajniak
07/08/2021, 3:03 PMkpgalligan
07/08/2021, 3:08 PMkpgalligan
07/08/2021, 3:10 PMkpgalligan
07/08/2021, 3:10 PMkpgalligan
07/08/2021, 3:11 PMMartin Rajniak
07/08/2021, 3:12 PMBig Chungus
07/08/2021, 3:14 PMkpgalligan
07/08/2021, 3:14 PMkpgalligan
07/08/2021, 3:15 PMkpgalligan
07/08/2021, 3:18 PMbut evolved intoI write a lot of half blog posts in the Kotlin slack, but get too busy to follow through. I mention this in the 10 questions video π
Big Chungus
07/08/2021, 3:25 PMBig Chungus
07/08/2021, 3:26 PMkpgalligan
07/08/2021, 3:27 PMBig Chungus
07/08/2021, 3:28 PMBig Chungus
07/08/2021, 3:29 PMkpgalligan
07/08/2021, 3:31 PMMartin Rajniak
07/08/2021, 3:46 PMkpgalligan
07/08/2021, 3:51 PMOften the best decision might be based on the type of people/software you currently posses.True. The "on the other" hand danger is if you have a hammer, everything is a nail (or at least looks "nail like"). ReactNative, for example, carries with it a whole bunch of tradeoffs on a purely technical level that are unrelated to the skills of the devs (and in some cases can't be worked around). Were it super solid and the obvious choice, everything else would be getting crushed at this point I think, but they're not. However, if you talk to a React web dev, they'll have the tendency to discount those issues.
kpgalligan
07/08/2021, 3:53 PMBig Chungus
07/08/2021, 3:53 PMkpgalligan
07/08/2021, 3:54 PMBig Chungus
07/08/2021, 3:56 PMkpgalligan
07/08/2021, 3:57 PMMartin Rajniak
07/08/2021, 4:25 PMBig Chungus
07/08/2021, 4:26 PMMartin Rajniak
07/08/2021, 7:25 PMkpgalligan
07/08/2021, 7:35 PMkpgalligan
07/08/2021, 7:36 PMMartin Rajniak
07/08/2021, 7:41 PMMartin Rajniak
07/08/2021, 7:47 PMBig Chungus
07/09/2021, 8:45 AMBig Chungus
07/09/2021, 8:47 AMBig Chungus
07/09/2021, 8:48 AM