On 11/15/18 6:35 AM, Joel Nothman wrote:
I think there are cases where the first few arguments would be better
to maintain as positional, but users would very rarely use more than
two, and we have long assumed keyword arguments in most cases, and
never received complaints when we have inserted not at the end or
deprecated in the middle.
I would expect that forcing all params after the first two (or three)
to be keyword arguments would formalise existing tacit assumptions,
would benefit maintainability, and would break very little code.
I was about to say "you expect but we have no way to measure that".
But then I realized we totally have a way to measure that (if using the
open source code on bigquery counts).
I could try to see if people use positional arguments and where. No
promise on timeline though.
I think there is little harm in doing it for new parameters while we
figure this out, though?
On Thu, 15 Nov 2018 at 20:34, Gael Varoquaux
<gael.varoqu...@normalesup.org <mailto:gael.varoqu...@normalesup.org>>
wrote:
I am really in favor of the general idea: it is much better to use
named
arguments for everybody (for readability, and to be less depend on
parameter ordering).
However, I would maintain that we need to move slowly with backward
compatibility: changing in a backward-incompatible way a library
brings
much more loss than benefit to our users.
So +1 for enforcing the change on all new arguments, but -1 for
changing
orders in the existing arguments any time soon.
I agree that it would be good to push this change in existing
models. We
should probably announce it strongly well in advance, make sure
that all
our examples are changed (people copy-paste), wait a lot, and find a
moment to squeeze this in.
Gaël
On Thu, Nov 15, 2018 at 06:12:35PM +1100, Joel Nothman wrote:
> We could just announce that we will be making this a syntactic
constraint from
> version X and make the change wholesale then. It would be less
formal backwards
> compatibility than we usually hold by, but we already are loose
with parameter
> ordering when adding new ones.
> It would be great if after this change we could then reorder
parameters to make
> some sense!
> _______________________________________________
> scikit-learn mailing list
> scikit-learn@python.org <mailto:scikit-learn@python.org>
> https://mail.python.org/mailman/listinfo/scikit-learn
--
Gael Varoquaux
Senior Researcher, INRIA Parietal
NeuroSpin/CEA Saclay , Bat 145, 91191 Gif-sur-Yvette France
Phone: ++ 33-1-69-08-79-68
http://gael-varoquaux.info http://twitter.com/GaelVaroquaux
_______________________________________________
scikit-learn mailing list
scikit-learn@python.org <mailto:scikit-learn@python.org>
https://mail.python.org/mailman/listinfo/scikit-learn
_______________________________________________
scikit-learn mailing list
scikit-learn@python.org
https://mail.python.org/mailman/listinfo/scikit-learn
_______________________________________________
scikit-learn mailing list
scikit-learn@python.org
https://mail.python.org/mailman/listinfo/scikit-learn