Programming languages with package managers
Khem Raj January 06, 2025 #metaIn past few decades new programming languages have sprouted and have been adopted with varied success think of go, rust, javascript, python etc. they have addressed core questions e.g. programming paradigm changes but one salient feature they all have included in the feature set is a package management system which is backed by a package repository.
Adding package manager as integrated part of language enables developers with a unified development system which is more of less platform independent this also helps writing portable code. It encourages software reuse, as the packages are published, they are easily available for using via the language package managers, this accelerates development.
It does pose a problem where it conflicts with system's package manager especially on Linux distributions. Linux systems are built using independent components and package managers e.g. rpm, dpkg are core piece of a distribution, Not only it installs/removes/updates packages, it also managers states e.g. first time installation changes and what to change in system on removal. These package managers pre-dates the integrated packages managers how to package rust or go packages as a distribution or release engineer is quite a challenge. On the other hand it makes developer's life a lot better.
This is also forcing to rethink the package management strategies and using image based updates instead of package based update mechanisms
In the future, we will see a better interoperation between these two schemes.