<div dir="ltr">On Wednesday, 15 April 2015 15:08:57 UTC+1, Chris Angelico  wrote:<blockquote class="gmail_quote" style="margin: 0;margin-left: 0.8ex;border-left: 1px #ccc solid;padding-left: 1ex;">> This is probably what I should have used "First class values"
<br>
<br>That's still pretty much everything in Python.</blockquote><div><br></div><div>Except for statements such as 'if' / 'for' or operators.<br></div><div> </div><blockquote class="gmail_quote" style="margin: 0;margin-left: 0.8ex;border-left: 1px #ccc solid;padding-left: 1ex;">Off the top of my head,
<br>the only manipulable things that aren't first-class are name bindings
<br>themselves, and those can usually be simulated - most namespaces are
<br>representable as dictionaries, and other bindings are
<br>__[gs]et{item,attr}__ calls; the notable exception is function locals,
<br>which you can't easily mutate from outside the function.
<br><br></blockquote><div><br></div><div>Why would you want to mutate function locals from outside the function? That's not something I've ever explored.</div><div><br></div><div>Regards</div><div>Simon</div><div><br></div></div>