between and among: worth Phobosization?
Lionello Lunesu
lionello at lunesu.remove.com
Thu Dec 19 00:56:11 PST 2013
On 12/17/13, 4:38, Andrei Alexandrescu wrote:
> bool between(T, U1, U2)(T v, U1 lo, U2 hi)
> {
> return v >= lo && v <= hi;
> }
The expression a<b<c is not ambiguous in D. We could make it do what
people expect.
> uint among(T, Us...)(T v, Us vals)
> {
> foreach (i, U; Us)
> {
> if (v == vals[i]) return i + 1;
> }
> return 0;
> }
"in"?
assert("a" in ["a":1, "b":1]);
Again, with little compiler magic we could allow that to be written as
assert("a" in ["a", "b"]);
Note that I'm not advocating for O(n) "in" for regular arrays, but
merely for the compiler to recognize the "in []" pattern and Do The
Right Thing.
L.
More information about the Digitalmars-d
mailing list