a while ago i found that our 4gl is a descendent of mims and that the people who went on to develop the language which i believe was called rdl (pronounced riddle) at the time were involved with mims and it had alot of influence on the language.
i tried looking for some mims code but couldn't find any. it would be interesting to see some sample code though.
so you could say it started with mims and then rdl, for most of it's life it was 4gl and now it's abl ... i wonder what's next
The 4GL was used with Fourth Generation Languages. OpenEdge 10.x is ABL. 4GL is yesterdays technology, OpenEdge is Advanced Business Logic
Some people are just a little slow to pick up the new terminology ...
But, while were at it, 10.1B was not nearly the great leap forward in OO that 10.1A was, but does include some very meaningful enhancements such as method overriding and properties. I thought properties would mostly be good for keeping Tom from writing classes with public data members ... just in case he every writes any OO code ... but actually I have decided that I quite like them because they are very compact for setting up the simple core attributes of a class without having to define accessors except when needed. Method overloading is a bit dangerous, but very useful in certain contexts -- e.g., some demonstration code I have done using overloaded constructors in a domain class so that it can be:
1) initialized empty, such as when creating a new instance;
2) initialized completely with parameters, such as when initializing from a database; or
3) initializing completely from an XML input, such as one might do if the datasource was elsewhere on the bus.
This is very compact and keeps all other aspects of the class identical, regardless of data source, just as it should be.
You do realize, of course, that if one were to compile a .p into a native executable, that it would be huge because of all of the functionality currently provided by the AVM. Careful what you wish for.