On Tue, 20 Mar 2012 10:54:50 +0100, Thomas Berg wrote:

>The only alternative (as seen from the principle of least astonishment) I can 
>think of is using the explicit option "NULL" - assuming that value is never a 
>"real" option.
> 
In some contexts, such an option is unjustified.  Designs should
attempt not to restrict value spaces.

>BTW, In rexx if you check for an existing parm would "rexxfunc(arg1,,arg3)" 
>have a *non-existing* arg/parm nr 2 but "rexxfunc(arg1,'',arg3)" would have 
>and *existing*, but "empty" arg/parm nr 2.
> 
Empirically, yes:           
                                                                                
     
     5 *-* trace R
     7 *-* Junk = rexxfunc(arg1,,arg3)
    13 *-*  rexxfunc:
    14 *-*  return( arg( 2, 'Exists' ) )
       >>>    "0"
       >>>   "0"
     8 *-* Junk = rexxfunc(arg1,'',arg3)
    13 *-*  rexxfunc:
    14 *-*  return( arg( 2, 'Exists' ) )
       >>>    "1"
       >>>   "1"
     9 *-* junk = arg( 1,    )
       >>>   ""
    10 *-* junk = arg( 1, '' )
    10 +++ junk = arg( 1, '' )
IRX0040I Error running ./fooargs, line 10: Incorrect call to routine

Since you ask the question, I checked the doc at:

    http://publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/BOOKS/ikj4a3a0/4.3.4

I can see that it doesn't make this explicitly clear in the examples
given.  Is an RCF merited?

-- gil

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: INFO IBM-MAIN

Reply via email to