On Thu, Oct 13, 2022 at 3:31 PM Kevin Kofler via devel
<devel(a)lists.fedoraproject.org> wrote:
The dependency on LLVM is not even the worst issue in my eyes. LLVM is also
used by other core projects, e.g., mesa, these days.
The worst issue I see with Rust is the way libraries are "packaged", which
just implies installing source code and recompiling that source code for
every single application. (And as a result, the output obviously gets
statically linked into the application, with all the drawbacks of static
linking.) I consider a language with no usable shared library support to be
entirely unpackageable and hence entirely useless.
Do you have suggestions for improving this situation? I think we're
pretty close to doing the best we can with packaging Rust projects,
given the current limitations of the language (i.e. the support for
building "true shared Rust libraries" is still very limited and
unstable; but that might improve in the future).
Additionally, the way the Sequoia GPG backend for RPM is implemented,
it's actually shipped as a standard shared library with a C ABI and
accompanying C headers (which are binary compatible with the existing
in-house GPG backend code in RPM). No Rust code will be statically
linked into /usr/bin/rpm.
And then of course there is the issue that it is yet another language
with
yet another syntax (and an only partially C-like one, so the learning curve
is unnecessarily high), yet another library ecosystem, etc. C has been the
de facto lingua franca all this time, now we are back into a tower-of-babel
scenario with tons of programming languages, which will necessarily bloat
the core system over time.
I'm sorry to disappoint you, but Rust is here to stay, whether you
like it or not.
For example, it's been voted the "most loved" and "most wanted"
language for a few years in a row in Stack Overflow's surveys:
https://survey.stackoverflow.co/2022/#technology-most-loved-dreaded-and-w...
So, do you have any actionable / constructive criticism for how we do
Rust packaging in Fedora, or did you just want to post that "I hate
Rust because it's not C"?
Fabio