I4GL Modifications: Part 1 of 3
Posted in 1993
: "@(#)shar2.c 2.3 92/11/05" #!/bin/sh # shar: Shell Archiver (v1.22) # # This is a shell archive. # Remove everything above this line and run sh on the resulting file # If this archive is complete, you will see this message at the end # "All files extracted" # # Created: Fri Jan 22 19:12:20 1993 by jl at JLSS # # This is part 1 of a multipart archive # do not concatenate these parts, unpack them in order with /bin/sh # Files archived in this archive: # i4glmods # if test -r s2_seq_.tmp then echo "Must unpack archives in sequence!" next=`cat s2_seq_.tmp`; echo "Please unpack part $next next" exit 1; fi echo "x - i4glmods" sed 's/^X//' << 'SHAR_EOF' > i4glmods && X X ********************************************* X ** SUGGESTED MODIFICATIONS TO INFORMIX-4GL ** X ********************************************* X XDisclaimer: X Despite the fact that I work for Informix Software in the UK, this list X of suggestions does not have any more substance than you care to give X it by materialising it on your screen, or by placing it on paper. It X must not be taken as any sort of indication of an official stance by X Informix Software. X XMost of the suggestions in this list have been collated from the recent Xdiscussions on comp.databases.informix and the mailing list run by Walt XHultgen (walt@rmy.emory.edu); a few have been collected from other sources. XI claim no credit for the basic requirements stated below, though the Xstatement below is mainly in my own words. If people desparately want to Xclaim the idea, please send me an abbreviated version of this document with Xthe ideas to which you lay claim suitably annotated. I will try to include Xyour claims in any future version of the document. Bear in mind that more Xthan one person may have made the same suggestion -- in fact, that is Xgenerally the case. X XThis is a long document. To try and help make it manageable, it is split Xinto several sections. The first section is the preamble you're reading Xnow. The second section is a brief statement of the features -- one line Xindicating what is required for each feature. The items in this section Xare rated for plausibility with a letter in the set A-F with A good and F Xbad. An A-rated idea generally fits closely with the existing language, Xshould be easy to implement, and would be widely used. An F-rated idea Xprobably does violence to the spirit of the existing language, would be Xhard to implement, and might not be widely used. This scale is completely Xsubjective. The third section expands on each of the ideas in the second Xsection. Sometimes it proposes chunk of language syntax; this should be Xtaken as a suggestion, and you should consider sending in a revised Xversion. Whenever you do this, please bear in mind the requirements for Xbackwards compatability -- this will frequently disallow what would Xotherwise be desirable syntax. X XNotation: I4GL refers to both Informix-4GL and Informix-4GL RDS. R4GL Xmeans I4GL-RDS, and C4GL means (compiled) I4GL when a distinction is Xnecessary. ID means Informix-4GL Interactive Debuggger, but no suggestions Xhave been received concerning that. ISQL means Informix-SQL but does not Xfigure prominently in the discussion. The database engines are OnLine and XSE; all of the features discussed here are applicable regardless of which Xengine the application uses. A 4GL facility is a high-level, possibly Xnon-procedural, construct which is typically to do with screen or database Xhandling. A 3GL facility is normally analogous to the features found in an Xordinary programming language such as C, C++ or Ada. CDI refers to the Xnewsgroup comp.databases.informix and the mailing list. X XUnderlying assumption: it is assumed that any program which compiles and Xruns correctly under C4GL should also compile and run correctly under R4GL, Xand vice versa. X XWHAT SHOULD YOU DO WITH THIS MESSAGE? X X1: Save it. X X2: Read it. Contemplate it. Contemplate your navel. Let me know if you X find your navel helpful. X X3: If you disagree with one (or more) of the ideas in this document, send X me a message with clear identification of the idea to which you are X referring (they all have a number -- see below), and why you think it is X all wrong, and what should be done to fix it. X X4: If your favourite idea is languishing in Class D or E or F, then you X probably haven't made it sufficiently clear what you are asking for. X Please send revised details to me. X X5: If you think something is missing, put together a proposal along the X same lines as this document, and send it to me. X X6: Since it is intended to be a discussion document, please also send your X idea to the comp.databases.informix for general consideration. I will X be pleased to receive non-broadcast mail, but this is for general X discussion and as more people consider them, the ideas gradually get X improved. In this case, the more minds applied, the better. X X---------------------------------------------------------------------- X XBRIEF STATEMENT OF IMPROVEMENTS X XA quick count shows about 120 requests. These have been grouped into Xseveral subsets, and each request has been given a number of the form XI4GL-axx where "a" is a letter indicating which subset the request has been Xgrouped with, and "xx" is a 2-digit number to identify the request in the Xsubset. The number of a request does not reflect its status in any way. X X Engines I4GL-Exx X Tools I4GL-Txx X 3GL I4GL-Lxx X SQL I4GL-Sxx X Reports I4GL-Rxx X Menus I4GL-Mxx X PROMPT I4GL-Pxx X Forms I4GL-Fxx X Windows I4GL-Wxx X INPUT I4GL-Ixx X DISPLAY ARRAY I4GL-Dxx X INPUT ARRAY I4GL-Axx X CONSTRUCT I4GL-Cxx X Picklists I4GL-Kxx X XENGINES X XThese requests are really requests for changes in the database engines X(OnLine and SE), rather than the tools (I4GL, ISQL), even though they arise Xout this I4GL discussion. The list of requests here could be substantially Xextended if it were not that the focus of the discussion is I4GL. X XI4GL-E01: Control who can create databases in an OnLine system. XI4GL-E02: support for multiple databases with the same name under Online. XI4GL-E03: Name of SET EXPLAIN log file set by environment variable. XI4GL-E04: Ability to discover name of current database. XI4GL-E05: Addition of comments columns to certain system tables. XI4GL-E06: Systables should record time when table was last modified. X XTOOLS X XThese requests relate to the tools provided with I4GL. It does not address Xthe tools which should be provided with the engines. X XI4GL-T01: Library support for R4GL. XI4GL-T02: Upgrade UPSCOL. XI4GL-T03: Programmers environment consistent between C4GL and R4GL. XI4GL-T04: Programmers environment aware of forms and message files. XI4GL-T05: Programmers enviro