Re: Beta 2.108.0
On Thursday, 21 March 2024 at 02:14:36 UTC, WebFreak001 wrote: On Saturday, 2 March 2024 at 17:40:29 UTC, Iain Buclaw wrote: .. since they drastically make things easier (hexstrings) or even possible in the first place (magic initializer thingies) for library code and generated code. I cannot say the same thing. It is thought-provoking that even the toHex() function, which should be in std.conv, was not included and we had to write it ourselves. SDB@79
Re: Beta 2.108.0
On Saturday, 2 March 2024 at 17:40:29 UTC, Iain Buclaw wrote: Glad to announce the first beta for the 2.108.0 release, ♥ to the 35 contributors. This release comes with 7 major changes and 48 fixed Bugzilla issues, including: - In the language, support has been added for Interpolated Expression Sequences. - In phobos, std.uni has been upgraded to Unicode 15.1.0. - In dub, the fetch command now supports multiple arguments, recursive fetch, and is project-aware. http://dlang.org/download.html#dmd_beta http://dlang.org/changelog/2.108.0.html As usual please report any bugs at https://issues.dlang.org -Iain on behalf of the Dlang Core Team woah this release is amazing! It's solving some of my long standing pain points missing with the language (in particular named arguments as struct initializer replacements and interpolated strings) - the other features may only be very niche things, however they are absolutely plenty appreciated since they drastically make things easier (hexstrings) or even possible in the first place (magic initializer thingies) for library code and generated code. This gives me excitement like older D releases used to feel again, as well as in the forums real usage of D in projects or samples instead of pointless discussions seem to also be gaining more popularity again. Can't wait for the full release, gonna try out using new features from this beta one already.
Re: Beta 2.108.0
On Saturday, 2 March 2024 at 17:40:29 UTC, Iain Buclaw wrote: [...] Named arguments for functions have been implemented and documented Yay, I was really looking forward to this. I currently use `std.typecons.Flag` virtually *everywhere* to make sure I don't confuse parameters. ```d auto doThing( const string what, const Flag!"foo" foo, const Flag!"bar" bar, const Flag!"baz" baz = No.baz) { // ... } auto thing = doThing("asdf", Yes.foo, No.bar, Yes.baz); ``` It will take some time adapting to but I welcome the addition.
Re: Beta 2.108.0
Am 16.03.2024 um 11:31 schrieb Daniel N: ```d union U { float asFloat; uint asInt; } auto u0 = U(1.0); // this sets the `asFloat` field auto u1 = U(asInt: 0x3F80); // formerly not possible ``` Wow, this is so cool, can't wait to try it out, thanks to everyone who made it happen! Note that this has already been possible in places where the {} syntax can be used: auto u1 = {asInt: 0x3F80}; Still great to see this officially implemented!
Re: D-wrappers BLAKE3 wrapping C library libblake3
On Tuesday, 19 March 2024 at 15:38:40 UTC, Ben Jones wrote: On Tuesday, 19 March 2024 at 08:40:37 UTC, Per Nordlöw wrote: On Tuesday, 19 March 2024 at 08:35:55 UTC, Per Nordlöw wrote: I just added a D implementation to dmd (https://github.com/dlang/dmd/blob/master/compiler/src/dmd/common/blake3.d) which doesn't support streaming, so is probably somewhat simpler/smaller, in case that's useful Use, that's the reason why added blake3-d. The function, testVector in DMD can be made static, btw.