Python Visual Tutorial
people.csail.mit.edu
people.csail.mit.edu
First, if your bourne shell scripts have grown so much you need a debugger, you might want to consider there are other issues than the lack of a debugger for the bourne shell.
Second, there are debuggers for bash, zsh and ksh. And probably others many other shells.
Given all of them have multiple debuggers, I thought that the original comment couldn't imply that as that would make it entirely and irredeemably wrong.
Also, screw the qualifier "scripting language" for full-fledged general-purpose programming languages. Erlang is sometimes used for scripting, does that make it "a scripting language"?
There's power to such simplicity, and I immediately forwarded it to people I know are new learning programming in Python right now. Good stuff, keep it up!
So I think that's probably the reason why they're less common. With scripting languages it takes a lot longer to reach the point where you start searching for tools to make your life less painful.
My niece recently asked me how to learn to program. Since she not extremely tech literate, I gave her a pointer to Zed Shaw's book. We had two sessions together to get her up to speed. These included going through the pre-reqs of learning to to use the command line, creating and editing .py files, the differences between the interactive interpretor and executing scripts, how to read a traceback. She stuck with it, but it took away from some of her interest.
If I had to start again, I would definitely point her to this app.
Obviously it would omit things like argv, files, the os module. I've seen working with IO to be extremely valuable. She was able to quickly write fill in the blank form letters and simple interactive scripts. But there is plenty one can do with just print and loops.
Unfortunately I see that raw_input(), dir(), and __builtin__ all raise problems. My niece was extremely excited to find out about all the 'hidden' objects that she could play with.
javascript:alert("hello, " + prompt("what is your name?"))