Fourth Generation Language

Marketing-speak for a procedural programming language with some or all of:

These features apparently put the FourthGenerationLanguages above such run-of-the-mill languages as CobolLanguage, marketing-speak for which is ThirdGenerationLanguage?.

The "Natural language" grammar typically results in an enormous number of reserved words, most of which do very little.

The built-in features may have merit. However, the languages tend to be rather poorly designed, leaving out such things as, for example, an easy way to write functions. The built-ins rarely make up for the lack of generality in the language designs. They also lock you into a particular DBMS.

The current trend for languages is OO, without imposing any particular database or UI. With OO constructs available, you can build and call upon pretty much any other interface you can imagine, databases and UIs included.

Many FourthGenerationLanguage's seem to be modeled after some long-forgotten set of the designer's toy programs. The semantics of the language constructs would fit those old programs extremely well. The program you or I am working on today, however, could be a bit of a problem.

I once did a one week course in a FourthGenerationLanguage called Progress Version 6. One of this languages 'niceties' was, if you added a name to a frame, it changed from one-record-per-page to a one-record-per-line. A fellow student (a bit more pointy-haired than the rest, but anyway...) was struggling with such lameness, gave up on frames and resorted to coding his exercises' output in longhand cursor positioning and text output. The instructor accused him of 3GLing.

--MattRickard

As far as I can see, 4GLs are just examples of DomainSpecificLanguages. It's just that often the domain is a database with a nice GUI. Does anyone agree or disagree?


I agree. -- DaveHarris


The definition for nth Generation Language (where n seems to vary from 1-5, and might even be 0 in some cases) seems to be highly author-dependent. (Usually, the author's favorite technology or paradigm is assigned a higher value of n. If I had a quarter for every such definition--well, I wouldn't be BillGates, but I might be able to get a cup of coffee at StarBucks?. --ScottJohnson

See NthGenerationLanguage

CategoryAntiPattern


EditText of this page (last edited April 10, 2012) or FindPage with title or text search