Saturday, December 13, 2008

Pondering Python

Some of those Intel guys, in a recent meeting, were saying where Python fits into their company: a workbench for chip testing, right down to the registers, comes in that flavor; IronPython looks tempting.

Speaking of IronPython, I wonder if Microsoft will give it more profile. Marketing wisdom has been to pander to the VB army above all, not rock that boat (a goldmine).

However, with .NET gaining in prominence and the newer VB morphing into a rather redundant flavor of C# in some ways, there's a lot of demand for these agiles, very high level languages like these Linux people have.

For those less familiar, .NET is a virtual machine API that doesn't specify the underlying operating system, so we really don't care in that sense.

The "Redmond look"
is already cross-platform, cross-fertilizing with Xerox-Parc's, SGI's... Sun's i.e. the whole idea of "windows" on a "desktop" is "standard GUI" in this day and age (the eye candy of our era). High level computer languages like Python are not bound to these metaphors (visualizations), yet handle them well (control them), as they will future GUIs of merit.

Of course libraries matter, to any language, and operating systems have their varying capabilities, so in that sense importing from OS (by whatever semantics) is going to result in diverging possibilities at higher levels.

Driving a motorcycle is different from driving an ATV.

The whole point of a VM, however, is to sustain the languages atop it, in part by shielding them from OS-related issues. Python, Scheme, Ruby, will compile to bytecodes in the CLR and therefore interoperate happily, whether their authors do or not. That's the joy of interoperability: we get the benefits of synergy without coercing coders to drop their favorite snake, gem, intriguing favorite language for puzzle solving.