× 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.



Oops, wrong link, he ref'ed that article in the one I meant:
http://ibmsystemsmag.com/blogs/you-and-i/february-2018/four-user-questions-and-expert-answers-that-prove/

On Mon, Feb 5, 2018 at 10:31 AM, Jack Woehr <jwoehr@xxxxxxxxxxxxxxxxxxxxxxxx
wrote:

Steve Will blogs today about What Is Modern RPG: http://ibmsystemsmag.com/
blogs/you-and-i/august-2015/rpg-and-ibm-i-programming-languages/

On Mon, Feb 5, 2018 at 10:28 AM, Jon Paris <jon.paris@xxxxxxxxxxxxxx>
wrote:

If it _only_ uses globals and doesn't produce a specific result then that
would be in the "OK yo can do that" category.

The reason I started applying this rule is that too many long-time RPG
programmers just don't think it through and just do what they have always
done. This rule forces them to think about what they are doing.


Jon Paris

www.partner400.com
www.SystemiDeveloper.com

On Feb 5, 2018, at 12:09 PM, Richard Schoen <
Richard.Schoen@xxxxxxxxxxxxxxx> wrote:

I was thinking on this one a bit and aren't sub-procedures main
functions where you pass parms in and get info back.

Much like in other programming I do, I like to think of them as a black
box, especially when used across applications.

If a sub-procedure for some reason uses all the global program
variables and is simply being used to encapsulate some looping logic or
something similar, why not use a subroutine instead ?

Just thinking out loud on this.

I don't do a ton of RPG coding any more so a few example use-cases
would be good to hear about.

Regards,
Richard Schoen
Director of Document Management
e. richard.schoen@xxxxxxxxxxxxxxx
p. 952.486.6802
w. helpsystems.com

----------------------------------------------------------------------

message: 1
date: Mon, 5 Feb 2018 11:23:02 -0500
from: Jon Paris <jon.paris@xxxxxxxxxxxxxx>
subject: Re: What is a Modern RPG Programmer???

I have to agree with Rob on this.

My policy is that if you want to use a subprocedure go ahead. If you
want to use a subroutine then you need to explain to me what benefits it
offers and why you are convinced that it will never need parameters or a
return value.

Future protection - I don't want my programmers producing future relics.


Jon Paris

www.partner400.com
www.SystemiDeveloper.com

On Feb 5, 2018, at 10:57 AM, Rob Berendt <rob@xxxxxxxxx> wrote:

John Erps,

I didn't say never use a subroutine. I said that I personally went
hardcore on only using subprocedures for a year. And stated my reason.
You can see that below in the thread. Once I broke the habit of
falling back to what was easy and comfortable I used subroutines where
appropriate. I really thought I was quite clear on that.

One thing to keep in mind is to always think of the future.
What may be a subroutine in an existing program could evolve.
- First into a subprocedure
- Next moved out of the main program into a service program.
- Then someone could create a UDF from that service program
subprocedure
- That UDF could be called by SQL with stuff like Select item_number,
onhand(item_number)...
- That UDF could be imbedded into an SQL view Create view Item_user
as (select item_number, onhand(item_number)...
and thus making user queries easier.


Rob Berendt
--
IBM Certified System Administrator - IBM i 6.1 Group Dekko Dept 1600
Mail to: 2505 Dekko Drive
Garrett, IN 46738
Ship to: Dock 108
6928N 400E
Kendallville, IN 46755
http://www.dekko.com



--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing
list
To post a message email: MIDRANGE-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at https://archive.midrange.com/midrange-l.

Please contact support@xxxxxxxxxxxx for any subscription related
questions.

Help support midrange.com by shopping at amazon.com with our affiliate
link: http://amzn.to/2dEadiD

--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing
list
To post a message email: MIDRANGE-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at https://archive.midrange.com/midrange-l.

Please contact support@xxxxxxxxxxxx for any subscription related
questions.

Help support midrange.com by shopping at amazon.com with our affiliate
link: http://amzn.to/2dEadiD




--
Absolute Performance, Inc.
12303 Airport Way, Suite 100
Broomfield, CO 80021

NON-DISCLOSURE NOTICE: This communication including any and all
attachments is for the intended recipient(s) only and may contain
confidential and privileged information. If you are not the intended
recipient of this communication, any disclosure, copying further
distribution or use of this communication is prohibited. If you received
this communication in error, please contact the sender and delete/destroy
all copies of this communication immediately.





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.