Modern programming languages promote software reuse via package managers that facilitate
the integration of inter-dependent software libraries. Software reuse comes with the
challenge of dependency bloat, which refers to unneeded and excessive code ...