On Jun 3, 2009, at 2:09 PM, Michele Simionato wrote:

On Wed, Jun 3, 2009 at 12:59 PM, Abdulaziz Ghuloum <[email protected]> wrote:
You mean making python properly tail recursive is hard?
I find that hard to believe.  Handling tail calls cannot
be harder than handling nontail calls.

No, I am thinking about making the Python debugger (in the
hypothetical case TCO were implemented) as smart as the Ikarus debugger.
I have no idea if that could be easy or difficult,

I don't know anything about how the python debugger works,
if it's implemented in python, and how much of the runtime
system it is aware of.  All I know is that the ikarus
debugger is pretty straight-forward.  It is implemented all
in scheme.  It only uses one ikarus-specific feature (call/cf
which gives you an eq?-comparable pointer onto the stack). It
also has a simple interface between the compiler/interpreter
and the debugger, e.g., rewrite all
  (proc args ...)
=>
  (debug-call '<source-info> proc args ...)
and you get debuggable/traceable code.


taking also in account speed and backward compatibility issues.

I don't think these would be serious issues for python.

Maybe is just lack of will.

That's clearly the issue, for if there's a will, there's a way.

Anyways, this is getting off topic.  All I wanted to do was
to state some of the motivations for making the debugger.
[Your own posts were another motivation: you kept on saying
no stack trace this, no stack trace that, until I couldn't
take it anymore. :-)  So thanks!]

Be careful Aziz, do not encourage by solving my pet peeves,
otherwise I will rant even more! ;-)

This is Ikarus's rant-driven-development strategy at work. :-)

Aziz,,,

Reply via email to