To launch the Eclipse IDE, it comes with a native executable and a companion shared library, which are currently written in C.
The launcher code is infrastructure for most Eclipse devs and seems to be rarely touched. Maybe this is because it simply works, maybe that is because the language and codebase seems arcane and unwieldy to Java developers.
This talk pitches the idea to replace the code of the native executable by code written in Rust. Even though it seems that "Rewriting it in Rust" (RIIR) seems to be an end in itself, the language switch can have several short and longer term advantages which will be outlined by the presentation.
The talk will give an overview of the reasons why it would be a good idea to port the starter from C to Rust and what the downsides are and possibly could be. It will also highlight what future possibilities a Rust port would entail.
Examples of a prototypical almost 1:1 port (functionality wise) of the launcher executable will be shown to show how Rust can improve the readability of the code and how cargo (Rust's build tool) can simplify the build process. This will show a comparison of C with Rust is in context of a real life project with real life code, Eclipse developers use every day.
We will also discuss alternatives (Go, Graal VM native image, staying with C/C++) to using Rust as the language for the
native Eclipse launcher.
Feedback is welcome to get a feeling if this endeavor is worthwhile or not deemed an improvement by the community.