2 ms·
Heh, give snark, get snark. Virgil doesn't interoperate with C because ABI is a sticky, ugly, thorny thing. However, I've come to realize that several projects
by titzer 3y ago
Heh, give snark, get snark. Virgil doesn't interoperate with C because ABI is a sticky, ugly, thorny thing. However, I've come to realize that several projects that want to use Wizard, a thing I wrote in Virgil, could do so if Virgil would link with C code. Problem is, all of that stuff at the C ABI layer is a quagmire.
I think pretty much all languages are hoping that that native ABI cesspool just disappears. I don't have a solution to that problem, but I know the solution isn't to keep on truckin' with uninitialized data, out-of-bounds-memory accesses, stack overflows, and undefined behavior. Surely we can do better.
- mike_hock 3y agoThe solution isn't to keep on trucking with the interoperability situation either, but you gotta fix that first. Or don't and keep on trucking with UB. Your choice. Y'all's choice.
- titzer 3y agoObviously I don't control the PL landscape's decision-making for what level of abstraction they want their compilers to target; that's why I helped create Wasm to put all of that mess into a sandbox so we can move on with a brighter future :)