Why any! with map! is not working here

rnd r_narang at yahoo.com
Fri Jun 7 04:21:39 UTC 2019


On Thursday, 6 June 2019 at 21:32:11 UTC, Jonathan M Davis wrote:
> If any is not given a predicate, it defaults to just checking 
> whether the element itself is true (requiring that the element 
> be bool), which is why Marco's suggestion works, but it's a 
> rather odd way to write the code and will be less efficient 
> unless the optimizer manages to optimize away the extra work 
> involved with having map.
>
> However, in general, with D, you're not going to find that 
> there is only one way to do things. There are going to tend to 
> be many different approaches to solve the same problem. D code 
> is often simple because of the powerful language constructs and 
> standard library, but it makes no attempt to make it so that 
> there's only one way to do things - especially when you start 
> combining stuff to do whatever it is you're trying to do.
>
> - Jonathan M Davis

Maybe one of these methods can be made 'official' or 'idiomatic':

> any!pred(ss);
> ss.any!pred();
> ss.any!pred;

This will reduce learning burden on beginners.



More information about the Digitalmars-d-learn mailing list