Types, Cython, program readability

Jeff Schwab jeff at schwabcenter.com
Sun Mar 16 17:48:44 EDT 2008


Ben Finney wrote:
> sturlamolden <sturlamolden at yahoo.no> writes:
> 
>> If you don't know how to install a C compiler like Microsoft Visual
>> Studio, you should not be programming computers anyway.
> 
> Utter elitist nonsense.
> 
> Programming should be made easier, and I see Python as a very good
> language for making programming easier. Lowering the barrier for
> prospective hackers to get into programming is a good thing. The
> installation of a C compiler is incidental to that, and has no
> necessary connection with programming.
> 
> Placing meaningless roadblocks, as you suggest should be done, is
> anathema to education.

Hear, hear!

I continue to be shocked when an OS doesn't come with a compiler for the 
language in which the OS is written.  It seems like one of the most 
basic things that should just be there, along with some kind of command 
shell (be it CLI or graphical), and ideally a well-defined scripting 
interface that is easily extensible from the "core" language.

Nowadays, scripts are often intended to work on multiple different 
platforms; various scripting languages therefore list portability among 
their most valuable features.  One issue from which most of them suffer 
is that they really are not suitable for systems programming.  As 
scripts evolve into applications, native-language compilers end up being 
necessary, after all, such that portability of non-trivial programs is 
severely limited.  (It's not really the languages' fault.  After all, 
they were only really meant to enable portable scripting.)

Python, I think, helps improve the situation with specific support for 
applications programming.  Unlike Perl or Tcl, Python is not just a 
scripting language with a set of ad-hoc extensions.  There are still 
issues, and Python probably will never be a general-purpose replacement 
for system-native language compilers, but it does enable a smooth ramp 
from "just a user," through "a user who does some scripting," to 
"application developer."

I am of the opinion that the more regular users write and share code, 
the faster we will see improvement in overall software quality, and the 
more pleasant the world will be for all of us to live in.

See also:
http://cm.bell-labs.com/cm/cs/upe/
http://www.linfo.org/unix_philosophy.html



More information about the Python-list mailing list