Remix.run Logo
rootlocus a day ago

Ginger Bill, the Odin language developer, is openly hostile against package managers (he wrote a post called "Package Managers Are Evil") so he maintains his own wrappers of popular C libraries in vendor folder next to the compiler. That doesn't sound like a healthy ecosystem to me.

I think zig is also highly opinionated but it always seemed to me that Andrew started from solid pillars and made an excellent job of carefully considering each feature that was added to the language:

- No hidden control flow.

- No hidden memory allocations.

- No preprocessor, no macros.

Odin on the other hand is just some developer's personal taste marketed as "Programming Done Right". So, if you disagree with any choice Bill made, you're not doing programming right.

hresvelgr a day ago | parent | next [-]

> Ginger Bill, the Odin language developer, is openly hostile against package managers (he wrote a post called "Package Managers Are Evil") so he maintains his own wrappers of popular C libraries in vendor folder next to the compiler. That doesn't sound like a healthy ecosystem to me.

There are good reasons for this (supply chain attacks, dependency hell), and while Odin doesn't have a package manager it does have a concept of a package. There is nothing stopping anyone from downloading and adding them to a project, in fact Odin developers do this already. The Odin core library is absolutely massive and contains a lot of what you would need for most projects, vendor rounds it out. The purpose is to be batteries included so your project doesn't have to rely on as many dependencies.

> I think zig is also highly opinionated but it always seemed to me that Andrew started from solid pillars

It's funny you say that, because I hold the same stance for how Odin was constructed, and the examples listed hold for Odin too. There is a lot about Odin's design that is consistent with Zig. Check it out, you might be surprised ;)

> Odin on the other hand is just some developer's personal taste marketed as "Programming Done Right". So, if you disagree with any choice Bill made, you're not doing programming right.

What do you think every programming language is trying to do? Solve the issues of the author. Bill has strong opinions about programming, so he made a language and a reasonably successful one at that. Given the swathe of people who would just complain, it's refreshing when people try to instead better the world relative to their values. Say what you will, he does it because he cares.

hiccuphippo a day ago | parent | prev [-]

You could use Zig's package fetching system for Odin vendor packages since they made it work with C libraries for Zig.

Zig doesn't have a centralized package management system though. It's all links to tar.gz/git with integrity hashes.