(no title)
yanex | 8 years ago
Depending on the Swift release roadmap, I'll postpone 1.0 until the release of Swift 5, or make the API ObjC-compatible.
I also have plans for making a "lightweight API" (possibly in Lua). It will support only the subset of features available in the "full API", but if that would be sufficient, nothing prevents it from becoming the "right" way of writing plugins for Marta. (In any case, Swift API won't disappear).
saagarjha|8 years ago
As far as I’m aware, this isn’t a problem, since your communicating between the two using the Objective-C runtime, which is resilient to the underlying ABI because it essentially overlays its own. The issue arises when you have two plugins with incompatible versions of Swift: in this case, each will load its own standard library, which will lead to conflicts since for any given function in the shared library one of the implementations has to “win out”. This will cause at least one of the plugins to be unable to interface with the standard library correctly.