From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 109fba,63ef8c05ac090a41 X-Google-Attributes: gid109fba,public X-Google-Thread: 1014db,63ef8c05ac090a41 X-Google-Attributes: gid1014db,public X-Google-Thread: 103376,63ef8c05ac090a41 X-Google-Attributes: gid103376,public From: Ed McGuffey Subject: Re: 4th generation languages Date: 1996/10/22 Message-ID: <326D01CB.4AB6@ods04.and.ifg.gmeds.com>#1/1 X-Deja-AN: 191282326 references: <3265D240.287B@tam2000.tamu.edu> content-type: text/plain; charset=us-ascii organization: EDS - Indiana Resource Center mime-version: 1.0 newsgroups: comp.lang.ada,comp.lang.c,comp.lang.c++ x-mailer: Mozilla 2.02 (X11; I; HP-UX A.09.05 9000/735) Date: 1996-10-22T00:00:00+00:00 List-Id: Robert Dewar wrote: > > Steven said > > "A fourth generation language is one that is NOT procedural based. C++, > although it is object oriented, it is not a 4th generation language. An > example of a 4th generation language would be SQL, SmallTalk,etc.. > > Basically, any programming language that looks like plain English. > " All wrong. Many 4GL's contain procedures (example: Easytrieve+). SQL is certainly not a 4GL. It's not even a programming language, per se. It is a common syntax used to query a database. SQL is most often embedded in programs written in a language (usually a 3GL or a 4GL), and is converted into the host language by a preprocessor. SmallTalk is certainly not a 4GL. 4GL's are typified as being simple and easy to learn. Learning SmallTalk requires an understanding of object-oriented principles, which are deceivingly complex. No 4GL would require you to learn this kind of "behind the scenes" type stuff. Another note about 4GL's: they often handle common processes automatically. Examples of common processes are: 1. opening an input file and reading each record in sequence 2. putting report headers at the top of each page 3. tallying (records read in, records written out, page number, etc.)