The ideal OS for Python Programming …

… has to be Linux. The number of programming tools and libraries are incredible, as well as the availability of Python specific IDEs such as eric, bpython, and especially bpython-gtk. For those who are fussy, it is not exactly like the Borland RAD or anything, but it seems to have everything that a Python programmer could want in terms of code completion. This is not because I don’t know Python, but bpython-gtk offers the user command-completion in the form of a dropdown list of all installed libraries that have the same starting letters as what you typed.

When working on a new installation, this is important, since you might also want to know what libraries are installed on your system. I get this by typing the first letter of the library name after the “import” command. The user is greeted by a scrolldown list. Let’s say I pick one of the standard libraries: math.

So, now bpython-gtk will scan the math library for its objects and methods. When I want to use the math library, I am again greeted by a dropdown list, but this time consisting of all of the functions and procedures within the math library.

Other than those two very key features, this editor is actually little more than a python interpreter swallowed inside of a Python window. While Idle does not have that feature, Idle allows you to restart the interpreter. This is not an editor, and thus it cannot be compared wtih Eric. But it’s a great little sandbox for seeing what works.

Is Perl dead?

I am asking that as a question. I was beginning to think it was, after noticing a marked reduction in Perl textbooks in the computer sections of bookstores lately. That is a disappointment, as I liked the language, and it is important in my volunteer work.

Then, I got curious, and did a Google search of blog discussions on the rumors of Perl’s death (or at least rumors that the odour has intensified in the past year or so), and there has been considerable discussion over that year with supporters and detractors both claiming their side. Perl has moved up to about 5.16.0 as of this writing, with Perl 6.0 being proposed. Perl 6 is intended to be a new implementation of Perl, with new syntax, and thus a new learning curve. It has been in development for at least a year, and apparently not ready for big-time yet.

In that light, I can see a reason for booksellers to clear their shelves of their old Perl 5.x books, and waiting for the Godot of Perl 6 to arrive. Meanwhile what has been filling up the shelves are books on PHP, AJAX, Ruby and Python. That’s not bad news, really. I’m not authority on Ruby, but Python is a great Swiss army knife of a language. Ajax is widely used on the web, and will be used more in the future. PHP? There are more elegant languages for the web, but PHP is currently the lingua franca of the blogosphere, including the language driving this blog.

Perl will have its day again; it’s just that we shall need to wait for its release to see what great stuff it can do, and if it is that different from other Perl versions, can it co-exist with older Perl versions?