3 ms·
That's a great way to make a program work only on specific distros.
by xigoi 5y ago
That's a great way to make a program work only on specific distros.
- capableweb 5y agoSeems it fits Hare perfectly then, as one of the explicit goals of Hare is to only support non-proprietary OSes.
- Koshkin 5y agoWhy? Proprietary OS have package managers.
- xigoi 5y agoHow is being free related to having a specific package in the package manager?
- mumblemumble 5y agoI'd guess it does the opposite? If I'm writing for a proprietary OS, that's probably Windows or OS X. Both of which give me a more stable target to aim at when it comes to what dependencies I can expect. If I'm writing for an open source OS, that's probably some flavor of Linux. But which flavor? And which package manager does it use? And do they support all the dependencies I need, in the versions I need? Without pulling non-standard package repositories into the mix? When open source software has difficulty working on proprietary OSes, I think it's usually not because of the package manager. More often it's because of something like a glibc dependency. At which point the domain of support isn't really "open source OSes", it's usually something more like "glibc-based linux distributions."
- Koshkin 5y agoHow so?
- xigoi 5y agoBecause you can't guarantee that every distro's package manager will have the packages you need.
- wheelerof4te 5y agoBuild them from source, then. Hare is a systems programming language. What kind of a systems programmer doesn't know how to build from source?
- bccdee 5y agoSo the solution is just vendoring? Vendoring is very clunky—that's why we have package managers in the first place.
- wheelerof4te 5y agoLanguage designers have every right to avoid complex features if such a feature impede the language in any way. Hare does the smart thing - it decouples the library distribution model from the language. After all, it's the programmers job to make sure that distribution and packaging of his/her library is as simple as possible.
- bccdee 5y agoEvery programmer should not be re-solving the problem of library distribution just to distribute their library. This is a solved problem; a go-style git repository model is the bare minimum that a language should have.
- xigoi 5y agoHaving to download several dependencies from random websiees and install them is not the most fun way to spend an afternoon. Especially if half of them have cryptic build errors.
- wheelerof4te 5y agoSo Github is a random website now? I think that Hare's workflow and usecase encourages having very few or no dependencies. That means, in most cases, you should just be able to download a project's source, build and use it right away.