(Oops, sent as private, reposting to list) On Nov 20, 2007 12:36 PM, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
> FWIW it's trivial to run pyflakes on your code (automatically behind > the scenes) to get syntax checking; in vim, my syntax errors get > underlined immediately for python code. It's especially nice for > large web applications, where having to go reload a page only to > discover you typed "if a=1:" or some silliness actually takes some > amount of time. > > I also get function prototypes on the status line (so, e.g., the > elsethread example of confusing list.extend and list.append is > mitigated to a large degree). > > Dynamic typing loses some info, but you can get most of the big > benefits with it. > > -- > http://mail.python.org/mailman/listinfo/python-list > That sounds really cool. What do I have to do to set up vim so it does that for me? Back on topic, I don't think python has lost it's simplicity. It has added many features in the last few versions, but none of them are requirements for learning. There are some things in python that I can see might be sticky points for instructors, but these things have always been an issue. The IDE is one thing. With python being agnostic about so many things, such as the IDE, an instructor has to choose which ide would be best to teach with. And none of the ides available can match Microsoft's offering (One of the best, if not THE best IDE available for any language). As someone who only uses 2% of the features of an IDE if I am ever forced to use one, I don't respect that, but many people swear by it. The interactive interpreter is great as well, but that scenario doesn't work well for everybody. If someone doesn't have much experience with command line tools, than a microsoft word-ish (like VS) interface is going to be more condusive for them. You also have to think about a classroom scenario. I think python works very well for pair programming, one-on-one tutoring, or through text correspondence. In a class, there are many situations for error. Being tab-based is a real problem in this instance, when trying to tell someone how to write something. You have to be clear about where to tab over. With blocks, it is much easier to verbalize. I have run into this when helping people to code in person, but with one-on-one and their full attention it's not so hard to disambiguate things. In a classroom where many people are having different sorts of problems, I can see where issues might crop up. Then the library situation, which is a strength and weakness of python. It is starting to be remedied with easy_install, but easy_install on windows is a joke (and there are still issues with it under linux at times). There are many libraries but on windows it can often be a chore to track down the ones that you want, and while the batteries are included with respect to strong language features and web modules; the batteries are definitely missing in some key areas: gui (tk is really quite awful, hard to learn, and ugly), web application, graphics (pygame, PIL, opengl), sound/music (uh, any standard libs for this? pygame is the only one that comes to mind for me), etc. I'd like to see a few things. Easy install being included with pygame as standard, with a gui. Ability to browse the cheesshop and look for specific things, such as image processing, graphics display, gui, etc. A list of suggested extra libraries to install when you run the python installer: (Tick off the web framework(s) you want to install). A nicer default gui (don't know what that would be, yes I am aware of the huge flame war and wound this would open up). A slightly improved interpreter - when entering a long function and getting it wrong, I want to bring back the whole function, not just line by line. A better standard IDE - too bad the best ones all seem to be commercial. So that is mostly a wish list, and some of those things will never happen, but the standard easy install with a gui would be a good thing to work towards for the windows world. -- http://mail.python.org/mailman/listinfo/python-list