|
|
|
|
|
by andrepd
1385 days ago
|
|
You misunderstand. > we can't type-check zig libraries which contain generics. We can only type-check specific uses of those libraries. I.e. you cannot say whether this compiles for all n, only for the instances you actually instantiate |
|
- library users will find compilation errors in the library code (his is annoying, but when you get used to it, you can treat it as any kind of library bugs and submit a PR)
- library users are going to rely on accidental behaviors (that is “in the library author's mind this isn't been used this way”) and then you'll have breaking changes without noticing.
(I say that as someone currently working on a DSL for the train industry, and this language (started in 2012) has something really close to Zig's comptime and we're currently trying to move away from it, because of the aforementioned issues. And it's actually pretty hard because big chunks of the existing code don't actually compile unconditionally and only compile when a given set of compile-time conditions are met, which makes the migration process hard)