Vasiliy Tereshkov
Vasiliy Tereshkov
@skejeton In general, Umka uses structural type equivalence, i.e., two types are equivalent iff they have the same layout, field/parameter names, etc. So the type name doesn't really matter. However,...
> If alias1 and alias2 aren't equivalent, how does the first example work (when they're both non arrays) Because all integer types are compatible even if they are not equivalent...
@marekmaskarinec I need to think more about it, but here is what seems doubtful to me for now: - Equivalence becomes non-commutative: `T == U` but `U != T`. This...
@ske2004 If we accept that: 1. Our resolution of #520 and your comment https://github.com/vtereshkov/umka-lang/issues/520#issuecomment-2932501833 are valid 2. Dynamic arrays and structures should not be treated differently 3. All integer types...
@ske2004 > Dynamic arrays and structures should not be treated differently... I don't understand because right now you can do the following... Hmm, you're right: dynamic arrays _are_ treated differently,...
@ske2004 To be honest, I'm still not satisfied with the explicit casts between unrelated named types, which are allowed due to the covariant array rules: ``` type ( Id =...
@ABlobOfGarbage You are right. Thanks for reporting! Related: #543
Go runs this example without issue: https://go.dev/play/p/_e-LfTPGPKX
@marekmaskarinec What function will finally draw the text? The interface method `Font.draw()`?