develooper Front page | perl.perl5.porters | Postings from November 2007

in defense of "stable" platforms

Thread Next
From:
Jarkko Hietaniemi
Date:
November 21, 2007 17:43
Subject:
in defense of "stable" platforms
Message ID:
4744DEB8.9040202@iki.fi

  I met a traveller from an antique land
  Who said: Two vast and trunkless legs of stone
  Stand in the desert. Near them on the sand,
  Half sunk, a shatter'd visage lies, whose frown
  And wrinkled lip and sneer of cold command
  Tell that its sculptor well those passions read
  Which yet survive, stamp'd on these lifeless things,
  The hand that mock'd them and the heart that fed.
  And on the pedestal these words appear:
  "My name is Ozymandias, king of kings:
  Look on my works, ye mighty, and despair!"
  Nothing beside remains: round the decay
  Of that colossal wreck, boundless and bare,
  The lone and level sands stretch far away.
  -- "Ozymandias", Percy Bysshe Shelley


It seems that lately it has become fashionable to call for abandoning
"dead" platforms, or even explicitly hope for their apparently long
overdue death.  Frequent favourites for the execution or burial include
VMS and EBCDIC platforms.

I believe such a stance is pure folly.  It is understandably easy to
bemoan the cost of maintenance, and limited payoff.  But I think it is
very short-sighted to abandon platforms once gained from any source code
base.  Perl's code base especially since it is so widely used.

The reasons for my belief are twofold.

The first one is simply the good old "Was mich nicht umbringt, macht
mich stärker", or "What does not destroy me, makes me stronger."  Having
to *think* about along which faultlines your assumptions lie, regarding
operating system interfaces, filesystem capabilities, even 'characters'
or 'numbers' themselves, makes your code stronger.  If you don't
understand what your expectations are, they *will* be shaken and broken.
If you think your platform is the only one worth coding for and in, and
it will last forever, think again.  If you cringe at the maintenance
"cost" (whatever that means in an open source project), don't excise,
refactor.

The second one is simply courtesy.  If you were on a less used platform
(and some day, sooner or later, if you work long enough in the industry,
or even more often if in academia) you will land having to deal with a
platform that will defy your expectations and assumptions.  Wouldn't
*you* like to have your favourite tools available, say, Perl?
Some people wail that they don't want to support evil proprietary
systems, especially with open source.  I'm sorry but my definition
of open doesn't come with a dogma.  My ideology is helping out people.

-- 
... implementations should follow a general principle of robustness:
be conservative in what you do, be liberal in what you accept from others.
-- Jon Postel, RFC 761




Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About