anonymous:
A subthread of the "Impressed" thread revolved around D's lack
of a yield mechanism for iteration.
The yield as in Python is so useful and handy, and I miss it
often in D.
This is an example of Inverse Gray iterator (Sloane series
A006068) Python2 code from:
http://code.activestate.com/recipes/221457/
def A006068():
yield 0
for x in A006068():
if x & 1:
yield 2 * x + 1
yield 2 * x
else:
if x:
yield 2 * x
yield 2 * x + 1
Turning that in D code that uses opApply is not hard, but the
code inflates 3X, and you can't use most std.algorithm on it.
I have discussed the situation a little here:
http://d.puremagic.com/issues/show_bug.cgi?id=5660
Bye,
bearophile