On Fri, Feb 27, 2009 at 12:50 PM, Mike Cowlishaw <m...@uk.ibm.com> wrote:
>> > Sounds good.  (Remind me why it couldn't appear before the main
> program?)
>>
>> Because I'm too lazy to make it happen :-)  Currently, all directives
>> need to appear after the main part of the program.  It would be
>> possible to allow them there, and perhaps in a future release I will,
>> but right now, allowing that fundamental change would be quite
>> disruptive for a release that's in the home stretch.  ::REQUIRES
>> directives up front might be a good thing too.  Restrictions like this
>> are fairly easy to lift without breaking existing programs.
>
> (OK, gotit.  Yes, these are a good candidate for 4.x)
>
>> >> All option values must be either a symbol taken as a constant or a
>> >> literal string.  No expression evaluation takes place with
> directives,
>> >> which are static source descriptors.
>> >>
>> >> The options are fairly self-explanatory, but I think there is a need
>> >> for some keyword for DIGITS that means "use the same as the internal
>> >> built-in setting".  Looking for a name suggestion on that one.
>> >
>> > How about: 9   ? :-)
>>
>> But "9" is not the internal size for 64-bit systems.  "9" in this
>> proposal means always use numeric digits "9".  We want an option that
>> essentially says "use the setting that matches the size used
>> internally by the BIFs."
>
> OK, I didn't understand what was meant by 'internal size'.  At the moment
> I can't see any advantage of exposing internal limits (which could be
> relaxed in a later implementation).  They are also a bit vague: in the
> 32-bit is it 9 (for strings?) or 10 (for streams)?  And why couldn't it be
> bigger than that for streams even on a 32-bit system? [Aside: while
> testing for the example I gave earlier I discovered that stream query size
> gives a negative result for 2GB files, so this is a messy area, for sure.]

Streams always work with the fully 64-bit integer range, even on
32-bit systems.  That value
allows full stream sizes to be accessed.  That's in a completely
different category from the
string functions/methods where the normal "used internally rules apply".

>                                                            The
>> >> STRICTNOVALUE is for people routinely enable NOVALUE traps in all
>> >> code.  This will raise a SYNTAX error in any situation where a
> NOVALUE
>> >> condition would be raised.  I'm waffling on the keyword here
>> >> too...perhaps this should be NOVALUE keyword with an option such as
>> >> CONDITION/SYNTAX or RELAXED/STRICT.  In the theory that you want to
> be
>> >> able to explictly specify all forms of an option, probably the last
>> >> would be better.
>> >
>> > It could be: SIGNALON condition
>> > and maybe allow: CALLON condition
>> > too.
>> >
>> > (Perhaps only allow NOVALUE for the condition at first.)
>>
>> SIGNALON/CALLON to where?  SIGNAL references internal labels, which
>> are not visible across source "units" in a package.  This really is a
>> different chose, which is "raise an error rather than a condition".
>
> I wasn't suggesting allowing specification of labels, more that (for
> example)
>
>  ::options signalon novalue
>
> would have the same effect as adding
>
>  signal on novalue
>
> at the start of each code segment.  (i.e., it is simply defined as exactly
> that, rather than adding a new concept).  If there is a local novalue:
> label then the signal would transfer control; if not you'd get the usual
> 'label not found' message.

I don't really like that, since a more targetted message can be given
for the 3rd state....and in ooRexx, SIGNAL ON NOVALUE with no label is
one of those things that gives an immediate error rather than a
runtime one.

Rick
>
> Mike
>
>
>
>
>
>
> Unless stated otherwise above:
> IBM United Kingdom Limited - Registered in England and Wales with number
> 741598.
> Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU
>
>
>
>
>
>
>
> ------------------------------------------------------------------------------
> Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
> -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
> -Strategies to boost innovation and cut costs with open source participation
> -Receive a $600 discount off the registration fee with the source code: SFAD
> http://p.sf.net/sfu/XcvMzF8H
> _______________________________________________
> Oorexx-devel mailing list
> Oorexx-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/oorexx-devel
>

------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel

Reply via email to