<div dir="ltr">The only reason I can see for not allowing `*args` would be preserving a Traits behavior, but if this isn&#39;t how Traits behaves, then there&#39;s really no reason not to <a href="https://github.com/ipython/ipython/pull/3205">fix it</a>.<div>

<br></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Sun, Apr 21, 2013 at 12:26 PM, Robert McGibbon <span dir="ltr">&lt;<a href="mailto:rmcgibbo@gmail.com" target="_blank">rmcgibbo@gmail.com</a>&gt;</span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I would be +1 on allowing position arguments to the constructor, if its that easy.<br>
This feature/bug has bitten me before, which is why I remembered that error<br>
message.<br>
<br>
In general, with traitlets, you really end up moving a lot of logic out of the __init__<br>
method, and into _X_changed or _X_default, so it doesn&#39;t end up being that important.<br>
<span class="HOEnZb"><font color="#888888"><br>
-Robert<br>
</font></span><div class="HOEnZb"><div class="h5"><br>
On Apr 21, 2013, at 6:17 AM, Robert Kern wrote:<br>
<br>
&gt; On 2013-04-21 16:43, Thomas Kluyver wrote:<br>
&gt;&gt; For what it&#39;s worth, Python 3 introduces keyword-only arguments, which can be<br>
&gt;&gt; required arguments. That&#39;s specified as part of the function signature, though;<br>
&gt;&gt; I agree that this limitation in traitlets isn&#39;t ideal.<br>
&gt;<br>
&gt; It&#39;s relatively easily fixed. Just include *args in the __new__() and __init__()<br>
&gt; and ignore them.<br>
&gt;<br>
&gt; I don&#39;t recall, but this might have been an explicit design choice for traitlets<br>
&gt; in order to force the use of keyword arguments exclusively. It is a deviation<br>
&gt; from Traits behavior.<br>
&gt;<br>
&gt; --<br>
&gt; Robert Kern<br>
&gt;<br>
&gt; &quot;I have come to believe that the whole world is an enigma, a harmless enigma<br>
&gt;  that is made terrible by our own mad attempt to interpret it as though it had<br>
&gt;  an underlying truth.&quot;<br>
&gt;   -- Umberto Eco<br>
&gt;<br>
&gt; _______________________________________________<br>
&gt; IPython-dev mailing list<br>
&gt; <a href="mailto:IPython-dev@scipy.org">IPython-dev@scipy.org</a><br>
&gt; <a href="http://mail.scipy.org/mailman/listinfo/ipython-dev" target="_blank">http://mail.scipy.org/mailman/listinfo/ipython-dev</a><br>
<br>
_______________________________________________<br>
IPython-dev mailing list<br>
<a href="mailto:IPython-dev@scipy.org">IPython-dev@scipy.org</a><br>
<a href="http://mail.scipy.org/mailman/listinfo/ipython-dev" target="_blank">http://mail.scipy.org/mailman/listinfo/ipython-dev</a><br>
</div></div></blockquote></div><br></div>