On Wednesday, 21 August 2024 at 08:00:04 UTC, aberba wrote:
On Sunday, 11 August 2024 at 20:57:15 UTC, IchorDev wrote:
On Sunday, 11 August 2024 at 06:04:08 UTC, mw wrote:
BTW, for associative array, `remove()` is in-place; but here
for std.algorithm.mutation.remove (*keyword*: mutation), one
need to do
```
array = array.remove(index); // return a new container
// v.s.
aa.remove(key); // return bool (if it's removed)
```
This in-consistence is really bad.
One of them is part of DRuntime, and the other is a function
you can optionally import from Phobos. The fact that they do
not work the same way is not necessarily bad—they’re from
completely different places and serve completely different
purposes.
Naa, inconsistency is a bad design.
Do hate value types for not being consistent with reference types
then? That’s the main difference between the two: slices are
values and associative arrays are references.