[IPython-dev] Should we disable autocall by default from now on?

Hans Meine hans_meine at gmx.net
Thu Dec 8 04:29:21 EST 2011


Am Mittwoch, 30. November 2011, 22:56:05 schrieb Thomas Kluyver:
> […] With the notebook, I imagine we
> could literally rewrite the cell to "plot(e1)". To my mind, that would
> clearly say "this is the right way to do it, but I knew what you meant."

That’s a really nice idea.  It also fixes one of autocall’s problem, namely 
that it becomes dangerous to copy-paste code into standard .py files.

My personal impression with autocall when I first heard about it was "wow - 
that’s useful", but over the years, I have only used it for very few use 
cases, i.e. for a small set of functions.  Some example were:

In [1]: ,execfile pythonic.py

In [1]: reload mymod

After some months, I was so used to this syntax, that I even started to think 
that the latter would call a %reload magic (yes, in spite of the line telling 
me about the expansion).

I guess the confusion would not have arised if I used autocall for more than 
this tiny set of functions.  However, even though I am a lazy typer, I believe 
I may be able to /type faster than I would have to think/ about whether the 
thing I want to achieve can be typed faster/shorter with autocall.
(Plus, I am now using the German "Neo" layout which has /all/ kinds of 
parentheses at your immediate fingertips. ;-p )

So, I would question the overall benefit of autocall not only for beginners, at 
least in a standard terminal.

Ciao,
  Hans



More information about the IPython-dev mailing list