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



Bartell, Aaron L. (TC) wrote:
My next question to you would be why are there multiple languages that can
do OO programming?  Because somebody found a better way to do it.  RPG could
be that language that takes the next step!
Are you suggesting that an OO-RPG could be a "better way"?  Sorry, I
can't see that. Unless we copy outright an existing OO language.

Why are there so many OO languages? Why are there some many types of
motor vehicles? Because some are better suited to particular tasks
than others.

Why give RPG more functionality at all?  Why not just have your whole shop
move to C# or Java since they have the stuff that we are looking for?  See
where I am coming from?
I'm not sure I see your point. I've always argued that you should
use the appropriate tool for the task at hand. RPG is good at some
things, such as implementing business logic. But, not so good at
other things. (Others have argued that OO is not even suitable for
business logic. I don't agree, but I'm not going to debate *that*
point in this thread!)

If I had the choice I probably would develop 90% of my new programs in Java
because of the flexibility, but the reality of it is that in our corporation
we have about 50 RPG programmers and very few Java programmers.  Of those 50
there are very few that even want to learn a OO language, but those same
ones will want to know what the latest RPG enhancements are and start using
them.  This brings me back to my point of wanting RPG to go more in that
direction because that is what will allow me to use OO concepts more because
the RPG will adopt them more readily.
Unfortunately, there's a big learning curve in learning OO, and even
bigger if you want to learn it properly! Just having OO features in
a language does no good if you can't use them properly. And there's
a big learning curve in learning particular class libraries, which
are an important aspect of good OO languages. In the time it would
take to learn how to use an OO-RPG, you could learn Java, or any
other OO language.

I understand your point that many RPG programmers don't want
anything to do with any language not called "RPG". Many RPG
programmers also resist ILE!

In many ways, there's no reason you can't implement OO-like designs
today in RPG, if you understand OO.  You could come up with some
sort of OO framework in RPG.  For example, you could have a
framework where you allocate objects such that the object is
prefixed in storage by a couple of pointers, including, say, a
pointer to a class descriptor.  You could define procedures that
invoke methods on the objects, and the framework could search for
the appropriate procedure based on the class hierarchy you set up.
Implementing a storage manager with an effective garbage collector
might be a bit tricky, and mixing RPG variables with objects might
be a bit of a problem, but should be doable. (However, I see that as
more of an academic exercise, and not really a practical one.)

Even without a "OO-like" framework, OO philosophy can still guide a
system design even in a procedural language. In that case, not every
programmer in the team has to understand OO, just the system architect.

Cheers!  Hans





As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
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.