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



On 08/03/12 09:46 AM, Steve Richter wrote:
On Wed, Mar 7, 2012 at 10:37 PM, Hans Boldt<hans@xxxxxxxxxx> wrote:
On 16/02/12 04:39 PM, dmosley@xxxxxxxxxx wrote:
I heard it was going to end on December 21, 2012.



Does RPG have a rich set of built-in functions? or a rich class library?
Does RPG support OO programming? How does RPG handle namespaces? What
application frameworks are implemented in RPG? What data types are
supported? Does RPG have associative arrays?

was it technically possible to enhance RPG and ILE with these
features? If so were proposals made up the chain of command to enhance
RPG? At what level would the idea have been quashed?

Hi Steve!

I remember a classic line from Star Trek: TNG where Picard tells Data that you can play perfectly and still lose.

There were a lot of things that could have been done to leverage the architecture. For example, we had externally described files. We occasionally suggested the concept of externally described modules.

But it always came down to funding. Anything substantial takes resources. With the first RPG IV release, we were able to put a lot of good stuff into the language. I'll always cherish my memories of working on that project, and what we were able to accomplish. After that, we had a couple more major items to implement. But once they were done, RPG was pretty much back into maintenance mode, albeit with a couple of enhancements each release. At each release, we had to choose what we considered the most important items given the constraints. Thus, the old $100 surveys.

So to answer your question, technically, it was possible to implement lots of good things. The problem was funding. RPG IV was a BIG effort, in planning, design, coding, and testing. After that, I think few people had the motivation to ask for the resources to push for more improvements.

Frankly, I'm still amazed that /FREE made it into the language. There was so much controversy over that one feature that I gave it less than a 50/50 chance of seeing release. Later, I was able to leverage that into some nice free-form I/O features. But /FREE still left me jaded and cynical. (Or rather, more so!)

But to answer in a different way, note that the languages with the powerful features are primarily interpreted languages. In the past, I often argued that compiled languages are not well suited for application programming. There is just so much more that you can do with interpreted languages. For example, consider associative arrays. If you added that feature to a compiled language, there would be a significant run-time overhead. But in an interpreted language, you need fast table look-up anyways for the symbol table. You can use the same code for the associative arrays.

My point here is that interpreted languages are just so much easier to enhance with powerful features. And that makes them much better suited to application development.

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.