[issue10562] Change 'j' for imaginary unit into an 'i'

Mark Dickinson report at bugs.python.org
Thu Dec 2 20:40:10 CET 2010


Mark Dickinson <dickinsm at gmail.com> added the comment:

> There should be an environment variable to make the symbol settable.

That could work;  it's a bit late to do this in 3.2, though.  How about the following transition strategy for the complex output.

Python 3.3: Introduce PYTHONIMAGINARYSYMBOL environment variable (and possibly also a related command-line option to the interpreter?).

Python 3.4: Show a warning on startup if this environment variable isn't used.

Python 3.5: Make the environment variable mandatory.

Python 3.6: Make the environment variable optional again, but this time with the default output being 'i' rather than 'j'.

Python 3.7: Deprecate use of PYTHONIMAGINARYSYMBOL.  (Warning on startup if it's set.)

Python 3.8: Error on startup if PYTHONIMAGINARYSYMBOL is set.

Python 3.9: Go back to ignoring PYTHONIMAGINARYSYMBOL.

I'm sure we could find a compatible transition strategy for the complex *inputs*: (3.3: accept both 'i' and 'j';  3.6: warn about 'j' usage; 3.8 remove acceptance of 'j' on input).

----------

_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue10562>
_______________________________________


More information about the Python-bugs-list mailing list