Hacker News new | ask | show | jobs
by robertlagrant 491 days ago
That's interesting - I can sort of see it both ways. Would applying unit tests to the exposed functions not have sufficed?
1 comments

not the op, but had similar experience

kmp exposes everything as obj-c meaning c headers and not very good type annotations (enums are int only so you cant have full checking on each switch, everything is obj-c reference semantics meaning multi-threading gets tricky, kotlin exceptions are not catchable from swift) so there are a lot of edge cases to write unit tests for (on the client side) which negates a lot point of using kmp, and thats in addition to all of the kotlin-isms that leak out...

Ah, right. Yeah, that is surprisingly bad! Why wouldn't they at least generate enums!

  > Why wouldn't they at least generate enums!
they do but its going through objective-c which inherits c enums (which are basically integers) so when you use it from swift its like switching over an unbounded set so you always have to handle "default" cases leading to bugs compared to usage from android