3 ms·
Do you mean no dynamic lib support for Haskell code, separately from C libraries that can be dynamically linked?
by lallysingh 6y ago
Do you mean no dynamic lib support for Haskell code, separately from C libraries that can be dynamically linked?
- Blikkentrekker 6y agoThere is support for it, but no support for a stable a.b.i., as such with every minor change to the library, nothing linked to it can run without a recompilation. This is due to the non-strict semantics. Consider that in a C library, or any other strict language, the function loaded in the dynamic library is called by first evaluating all of the arguments, and then calling the function by value with the evaluated arguments. This is not how Haskell operates, where the arguments are, in effect, placed inside the function body directly and may, or may not be evaluated, as such a function can't be a black box that can arbitrarily change it's internal workings, so long as the outside a.b.i. remain stable — a program compiled against a dynamic library is fundamentally compiled against the inner workings of functions, rather than simply against the stable interface they proffer to the outside world.