[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: something like perl's 'require 5.4'



Paul van Delst wrote:
> 
> JD Smith wrote:
> >
> > Paul van Delst wrote:
> > >
> > > wot about
> > >
> > > IDL> print, double('5.4.1') ge 5.4d0
> > >    1
> > >
> >
> > Because it's exactly the same!  Yes it's ge, but is it gt?
> >
> > IDL>  print, double('5.4.1') gt 5.4d0
> >    0
> >
> > IDL>  print, double('5.4.1') eq 5.4d0
> >    1
> >
> > No it's not, it's eq.  Same problem.  So use this if you don't care
> > about the last digit and don't want to be open about it (it's not
> > exactly obvious this is the case).  Use the string compare method
> > otherwise.
> >
> > > Doesn't assuage your other concerns regarding the significance of the last digit however.
> > > I use comparisons like the above for code that contains BREAK, CONTINUE, SWITCH, etc
> > > statements. Or similar for the version in which pointers and objects were introduced (5.2?
> > > can't remember).
> >
> > The problem here is you'll not err cleanly... unknown control statements
> > will cause compile errors.  Not a lot that we can do about this.
> 
> Nuh-uh. They're interpreted as user functions/procedures.

Right.  I stand corrected.  Just hope they don't have any such named
routines lying about on their path.  Dereferencing pointers will cause
compile error in old versions though, right?

JD