comp.lang.idl-pvwave archive
Messages from Usenet group comp.lang.idl-pvwave, compiled by Paulo Penteado

Home » Public Forums » archive » Re: something like perl's 'require 5.4'
Show: Today's Messages :: Show Polls :: Message Navigator
E-mail to friend 
Return to the default flat view Create a new topic Submit Reply
Re: something like perl's 'require 5.4' [message #24698 is a reply to message #24696] Tue, 17 April 2001 09:05 Go to previous messageGo to previous message
Vapuser is currently offline  Vapuser
Messages: 63
Registered: November 1998
Member
JD Smith <jdsmith@astro.cornell.edu> writes:

> Craig Markwardt wrote:
>>
>> Vapuser <vapuser@catspaw.jpl.nasa.gov> writes:
>>> Hi all.
>>>
>>> I'm looking for something that check the version of the current IDL
>>> session against an input version, like perl's 'require 5.4'
>>> semantics and I *thought* I saw someone mention using something very
>>> much like this.
>>>
>>> Does anyone know of such a thing or was I just hallucinating?
>>
>> Extending on JD's answer with two more possibilities:
>>
>> if !version.release LT '5.4' then message, 'ERROR'
>> if double(!version.release) LT 5.4 then message, 'ERROR'
>>
>> The first comparison is a string compare, while the second one is a
>> numeric compare. There is a slight difference, but in practice they
>> are identical, and they also both handle the case of 5.4.1, etc. The
>> former will handle 5.4.1a, but I think it's rare. I always use the
>> latter.
>
> Hmmm...
>
> IDL> print,double('5.4') lt double ('5.4.1')
> 0
> IDL>print,double('5.4') eq double ('5.4.1')
> 1
>
> Hopefully RSI won't try to pull the latter on us.
>
> On the other hand, your string method looks good. The best counter
> example I could come up with is:
>
> IDL> print,'5.5a' lt '5.5B'
> 0
>
> Not too likely. I think I'll adopt the string version.
>
> Thanks,
>
> JD

How about:

version=strupcase(strjoin(strsplit(!version.release,'[.-_]', /extract), ""))
input_version=strupcase(strjoin(strsplit(desired_release,'[. -_]',/extract), ""))
if version lt input_version then 'eeek'

Clearly `desired_release' would have to be input as a string.

Of couse, this method 'requires' IDL 5.3 (IIRC), to get the regular
expression semantics of strsplit. The other question is will RSI use
any separator in version designations besides these three?

whd
--
William Daffer: 818-354-0161: William.Daffer@jpl.nasa.gov
[Message index]
 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: Re: OVERLAYING IMAGES
Next Topic: reading file into structure?

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ] [ PDF ]

Current Time: Tue Dec 02 12:50:24 PST 2025

Total time taken to generate the page: 1.60220 seconds