× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.


  • Subject: Re: CF-Spec - another call for opinions
  • From: "Eric N. Wilson" <doulos1@xxxxxxxx>
  • Date: Wed, 11 Aug 1999 18:06:38 -0700

Option 2 would be the best as far as I am concerned. The issue of name
collisions could be handled internally (by the programming shop) by having
warts tacked on to their function names or some other method to
differentiate inhouse commands from IBM RPG BIFs. For example in all of my
Delphi code every object I create has 'dscs ' prepended to it For example
the customer object would be TdscsCustomer. Using such decorations is common
to prevent name collisions.

IBM could follow a simular pattern in creating their new BIFs. Just a
thought, with out thinking too much about it. :-)

Thanks
Eric

______________________________________________
Eric N. Wilson
President
Doulos Software & Computer Services
2913 N Alder St
Tacoma WA 98407


----- Original Message -----
From: <boldt@ca.ibm.com>
To: <RPG400-L@midrange.com>
Sent: Wednesday, August 11, 1999 10:24 AM
Subject: CF-Spec - another call for opinions


> Greetings!  Asking the readers of this mailing list seems to work
> well for us in deciding questions.  And again, we have an issue
> which your opinions will help us decide on.  In examples that I've
> posted already, you've seen statements like "CF var = value", where
> the opcode EVAL is omitted.  Based on someones suggestion earlier
> today, I investigated allowing "CF UpdateMasterFile()" instead of
> "CF callp UpdateMasterFile()", and I found it remarkably easy for
> us to implement.
>
> However, allowing the opcode names EVAL and CALLP to be optional
> raises the issue of future compatibility.  Say someone codes
> "CF fred = flintstone" and in a later release we add new opcode
> FRED.  This would result in a compile error!  Note that we're not
> really making the opcode names reserved since we'd still allow
> "CF eval read = x", and in fact, coding EVAL would be required if
> the target variable name is the same as an opcode name.  As a
> result, the problem is not as bad as the appearance of new
> statements in other languages, especially COBOL.  But it would be
> something new for RPG programmers.
>
> So, please consider and choose one of the following options:
>
> 1) Make EVAL and CALLP always required:
>
>       CF eval KeepLooping = *ON
>       CF dow KeepLooping
>       CF    read MasterFile
>       CF    if %eof
>       CF       callp HandleEndOfFile()
>       CF    endif
>       CF enddo
>
> 2) Allow EVAL and CALLP to be omitted:
>
>       CF KeepLooping = *ON
>       CF dow KeepLooping
>       CF    read MasterFile
>       CF    if %eof
>       CF       HandleEndOfFile()
>       CF    endif
>       CF enddo
>
> 3) Option 2 with a commitment from us that no new opcodes will
>    conflict with any possible variable or procedure name.  For
>    example, opcode ON-ERROR could never be confused with a var or
>    proc name.  This may mean some goofy looking opcodes in the
>    future.  On the other hand, since most enhancements these days
>    seem to be in BIF's, this may not be too big a deal.
>
> 4) Optional EVAL and CALLP, but use some special character to
>    distinguish opcode names from var or proc names:
>
>       CF KeepLooping = *ON
>       CF /dow KeepLooping
>       CF    /read MasterFile
>       CF    /if %eof
>       CF       HandleEndOfFile()
>       CF    /endif
>       CF /enddo
>
>    If you don't like "/", what about some other character?
>
> 5) Is there some other alternative we've missed?
>
>
> As usual with this kind of poll, comments on the issue are
> welcome.
>
> Cheers!  Hans
>
> Hans Boldt, ILE RPG Development, IBM Toronto Lab, boldt@ca.ibm.com
>
>
> +---
> | This is the RPG/400 Mailing List!
> | To submit a new message, send your mail to RPG400-L@midrange.com.
> | To subscribe to this list send email to RPG400-L-SUB@midrange.com.
> | To unsubscribe from this list send email to RPG400-L-UNSUB@midrange.com.
> | Questions should be directed to the list owner/operator:
david@midrange.com
> +---END
>

+---
| This is the RPG/400 Mailing List!
| To submit a new message, send your mail to RPG400-L@midrange.com.
| To subscribe to this list send email to RPG400-L-SUB@midrange.com.
| To unsubscribe from this list send email to RPG400-L-UNSUB@midrange.com.
| Questions should be directed to the list owner/operator: david@midrange.com
+---END



As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.