Fabio Valentini wrote:
- incompatible compile-time options (i.e. resulting in conditional
compilation): different packages depend on crates with different sets
of features enabled, sometimes with conflicting options. Even with a
stable ABI, you'd need to build crates for all necessary combinations
of configurations, and that matrix quickly explodes (i.e. usually
exponentially - 2^n builds for for n independent flags). This is a
deal-breaker for shared libraries in most cases, and also can't be
solved by using a different compiler. (Unless you want to figure out
*which* combinations to build, and *only* build these.)
The application can pick the options with which each library is compiled?
What a stupid idea! Now I understand why the language is called "Rust".
Kevin Kofler