News for hackers. Stuff that matters.
Re:Algebraic Data Types for C99 by OskarS on Thursday May 09, 2024 @01:14PM (#40310403)
Of course the syntax sugar is a good thing if it makes it easier to write the code, but if the question is about "expressive power of the type system", it's not really relevant: Zig's type system can properly express a sum type. In addition: pattern matching is orthogonal to ADT, you can have pattern matching in both languages with and without algebraic types. Neither one implies the other.
Re:Algebraic Data Types for C99 by anon-3988 on Thursday May 09, 2024 @01:29PM (#40310587)
> Zig's type system can properly express a sum type.

Surely any Turing complete PL can express a sum type? I can't imagine a language that can support products but not sums.

Re:Algebraic Data Types for C99 by Tainnor on Thursday May 09, 2024 @02:12PM (#40311127)
Turing completeness has nothing to do with static type checking. Dynamically typed PLs can't express any type (except Any) yet are still Turing complete.