digitalmars.D.announce - sumtype 1.0.0
Paul Backus <snarwin gmail.com> writes:
SumType is a generic discriminated union type for modern D. It is designed to be an improved alternative to `std.variant.Algebraic`. Features: - Pattern matching, including: - Match-by-introspection ("if it compiles, it matches") (★) - Multiple dispatch (★) - Support for self-referential types (`This`). - Works with `pure`, ` safe`, ` nogc`, `nothrow`, and `immutable` (★) - Compatible with `-betterC` and `-dip1000` (★) - Zero runtime overhead compared to hand-written C - No heap allocation - Does not rely on runtime type information (`TypeInfo`) (★) Starred features (★) are those that are missing from `Algebraic`. With this release, SumType's public API is officially considered stable. No breaking API changes will be made from this release forward without a major version bump. Improvements since 0.10.0, the last announced version: - Copy constructors of SumType members are now called correctly. - Self-referential SumTypes can now contain self-referential Algebraics, and vice versa. - SumType is now tested on Windows in addition to Linux and Mac OS X. Links: - Documentation: https://pbackus.github.io/sumtype/sumtype.html - DUB: https://code.dlang.org/packages/sumtype - Github: https://github.com/pbackus/sumtype
aliak <something something.com> writes:
On Sunday, 15 November 2020 at 20:05:16 UTC, Paul Backus wrote:SumType is a generic discriminated union type for modern D. It is designed to be an improved alternative to `std.variant.Algebraic`. [...]Alright!! 👏 A 1.0.0 release! Awesome work here!
jmh530 <john.michael.hall gmail.com> writes:
On Tuesday, 17 November 2020 at 22:14:04 UTC, aliak wrote:[snip] Alright!! 👏 A 1.0.0 release! Awesome work here!Agreed.