Re: Beta 2.108.0

2024-03-20 Thread Salih Dincer via Digitalmars-d-announce

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

2024-03-20 Thread WebFreak001 via Digitalmars-d-announce

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

2024-03-20 Thread Anonymouse via Digitalmars-d-announce

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

2024-03-20 Thread Sönke Ludwig via Digitalmars-d-announce

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

2024-03-20 Thread Per Nordlöw via Digitalmars-d-announce

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.