On 27/04/17 23:43, Steven D'Aprano wrote:
On Wed, Apr 26, 2017 at 11:29:19PM +0100, Erik wrote:
def __init__(self, a, b, c): self import a, b self.foo = c * 100
[snarky] If we're going to randomly choose arbitrary keywords with no connection to the operation being performed,
The keyword I chose was not random or arbitrary and it _does_ have a connection to the operation being performed (bind a value in the source namespace to the target namespace using the same name it had in the source namespace - or rename it using the 'as' keyword).
can we use `del` instead of `import` because it's three characters less typing?
Comments like this just serve to dismiss or trivialize the discussion. We acknowledged that we're bikeshedding so it was not a serious suggestion, just a "synapse prodder" ...
But seriously, I hate this idea.
Good. It's not a proposal, but something that was supposed to generate constructive discussion.
The semantics are very different and there's little or no connection between importing a module and setting an attribute on self.
At the technical level of what goes on under the covers, yes. At the higher level of what the words mean in spoken English, it's really not so different a concept.
If we're going to discuss pie-in-the-sky suggestions,
That is just dismissing/trivializing the conversation again.
(If you don't like "inject", I'm okay with "load" or even "push".)
No you're not, because that's a new keyword which might break existing code and that is even harder to justify than re-using an existing keyword in a different context.
the problem this solves isn't big or important enough for the disruption of adding a new keyword.
So far, you are the only one to have suggested adding a new keyword, I think ;)