in reply to Writing for backwards compatibility

<nit>3-arg open was added in 5.005_03, not 5.6.</nit>

Update: Don't you just hate being completely and thoroughly being proven wrong? I do ... :-/

I've just spent a while rewriting Tree::Simple into Tree and reworking PDF::Template. After discussion with stvn, we decided to require 5.6 as a minimum Perl version. We don't see a lot of benefit in attempting to maintain compat with anything before that.

In our work, we target 5.8.6 as a minimum. For one thing, Unicode is handled much better (though not perfectly) in 5.8, which is nice. As for other features, it's nice to know that one has a better toolbox to reach for, even if one doesn't use them on a regular basis (or ever!)

Other languages have the same issue. For example, in JS, there's no reason to target anything under 1.5 - all modern browsers implement 1.5 (for some value of "implement") and attempting to write JS for pre-1.5 is an exercise in baldness. Ruby is the same way - 1.8 is the modern version, so I target it. (Ruby's dbi is written under 1.6, which makes it throw warnings under 1.8 - very annoying!)


My criteria for good software:
  1. Does it work?
  2. Can someone else come in, make a change, and be reasonably certain no bugs were introduced?
  • Comment on Re: Writing for backwards compatibility

Replies are listed 'Best First'.
Re^2: Writing for backwards compatibility
by xdg (Monsignor) on Nov 08, 2005 at 20:24 UTC