News for hackers. Stuff that matters.
Re:Mojo: It’s Finally Here by ptx on Thursday September 07, 2023 @03:39PM (#37424485)
> For example you can't do `foo = (yield a).b` you have to do `x = yield a; foo = x.b`.

The first snippet actually works fine – yield expressions were introduced with PEP 342 in Python 2.5.

Re:Mojo: It’s Finally Here by IshKebab on Friday September 08, 2023 @07:35AM (#37432222)
Ah I misremembered. I was actually trying to do this

    x = [yield a for a in b]
Which yields (heh) an `Invalid Syntax` error. Thanks for the link to that PEP though - turns out the answer is that you almost always have to parenthesise it.

    x = [(yield a) for a in b]
> SyntaxError: yield inside list comprehension

Ok my original point stands.