Featured Post

Linkedin

 These days, I mostly post my tech musings on Linkedin.  https://www.linkedin.com/in/seanmcgrath/

Saturday, June 07, 2003

Friday, June 06, 2003

Dynamic languages and higher order PI Calculus

PI Calculus, the formalism that underlies some common Business Process Modelling languages, may have an interesting role to play in the static versus dynamic languages debate.
Lots of powerful techniques that can be used with PI Calculi involve using higher order concepts such as sending names of ports/channels over links, creating ports on the fly and so on.
This stuff drives the math heads nuts because it makes it hard (impossible?) to formally prove equivalence between calculi.
So it boils down to this - do you want to be constrained in terms of flexibility or provably, formally, "correct" at some probably academic level?
I'll take flexibility thank you very much!
Advocates of Dynamic Programming languages like Python find higher order PI Calculi stuff completely natural and use test driven development as a more robust methodology for establishing "correctness" in this crazy, constantly changing, dynamic world.
Why not? The other approach - the keep everything static so that the compiler police can look over it - only provides the illusion of correctness. What have you to loose?
Here is a bold statement. By 2010 "compilers" will be a quaint anachronism. A throwback to the days when illusions of speed and illusions of correctness held sway over real speed (massive parallelism such as XGrids) and flexibility-based-design.

Are Dynamic Languages Going to Replace Static Languages

Robert Martin, a self confessed static typing bigot wishes he was programming
in Ruby, Python or Smalltalk.
The constant dripping of water, wears away the stone...We will get there.
Here is a "pick one" competition. Pick one of these:

    Demonstrable extra dimension in flexibility and ease of responding to changing business needs
    Apparant (but often flawed) warm and fuzzies to do with "correctness" at "compile time".

Well?

Thursday, June 05, 2003

A Flashback - oh, the pain, the visions, the rotating helicopter blades, the gunfire and smoke. Make it stop. Make it stop!

In an earlier life I engaged in a war with an enemy known as "6502 machine code". Via Don Park I found Crass - a 6502 cross assembler written in Python.
I don't know whether to applaud, laugh or cry. I think I'll cry.

Python in the enterprise

Alex Martelli paints a few pictures for enterprise developers.

Wednesday, June 04, 2003