> have there ever been a successful language rewrite, post critical pass, in the history of computer languages?
Does K&R C to C89 count?
> If so, what lessons can be brought to the current Python 2/3 situation?
C89 programs could use K&R libraries [1], and C89 compilers could compile K&R code.
[1] Well, so could Pascal or Fortran programs for that matter. Where K&R-->C89 fails as an analogy to py2-->py3 may be important aspects of what's so difficult with py2-->py3. (EDIT: added this footnote.)
Does K&R C to C89 count?
> If so, what lessons can be brought to the current Python 2/3 situation?
C89 programs could use K&R libraries [1], and C89 compilers could compile K&R code.
[1] Well, so could Pascal or Fortran programs for that matter. Where K&R-->C89 fails as an analogy to py2-->py3 may be important aspects of what's so difficult with py2-->py3. (EDIT: added this footnote.)